diff --git a/src/Models/Sede.php b/src/Models/Sede.php index 34b1151..8864d31 100644 --- a/src/Models/Sede.php +++ b/src/Models/Sede.php @@ -10,7 +10,7 @@ class Sede extends Model { public string $Indirizzo; - public string $Cap; + public string $CAP; public string $Comune; public ?string $Provincia; public ?string $Nazione; diff --git a/tests/IdTest.php b/tests/IdTest.php new file mode 100644 index 0000000..65c880c --- /dev/null +++ b/tests/IdTest.php @@ -0,0 +1,45 @@ +assertInstanceOf(Id::class, $id); + $this->assertEquals($idCodice, $id->IdCodice); + $this->assertEquals($idPaese, $id->IdPaese); + } + + public function testConstructorWithoutIdPaese(): void + { + $idCodice = 'ABC123456789'; + + $id = new Id($idCodice); + + $this->assertInstanceOf(Id::class, $id); + $this->assertEquals($idCodice, $id->IdCodice); + $this->assertEquals(Settings::IdPaeseDefault(), $id->IdPaese); + } + + public function testValidation(): void + { + $id = new Id('ABC123456789', 'IT'); + + $validator = Validation::createValidatorBuilder()->enableAnnotationMapping()->getValidator(); + + $violations = $validator->validate($id); + + $this->assertCount(0, $violations); + } +} diff --git a/tests/SedeTest.php b/tests/SedeTest.php new file mode 100644 index 0000000..b981387 --- /dev/null +++ b/tests/SedeTest.php @@ -0,0 +1,56 @@ +assertInstanceOf(Sede::class, $sede); + $this->assertEquals($indirizzo, $sede->Indirizzo); + $this->assertEquals($cap, $sede->CAP); + $this->assertEquals($comune, $sede->Comune); + $this->assertEquals($provincia, $sede->Provincia); + $this->assertEquals($nazione, $sede->Nazione); + } + + public function testConstructorWithoutProvinciaAndNazione(): void + { + $indirizzo = 'Via Example, 123'; + $cap = '12345'; + $comune = 'Example City'; + + $sede = new Sede($indirizzo, $cap, $comune); + + $this->assertInstanceOf(Sede::class, $sede); + $this->assertEquals($indirizzo, $sede->Indirizzo); + $this->assertEquals($cap, $sede->CAP); + $this->assertEquals($comune, $sede->Comune); + $this->assertNull($sede->Provincia); + $this->assertEquals(Settings::IdPaeseDefault(), $sede->Nazione); + } + + public function testValidation(): void + { + $sede = new Sede('Via Example, 123', '12345', 'Example City', 'EX', 'IT'); + + $validator = Validation::createValidatorBuilder()->enableAnnotationMapping()->getValidator(); + + $violations = $validator->validate($sede); + + $this->assertCount(0, $violations); + } +}