setName(['fr' => 'Belgium']) ->setCountryCode('BE'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); yield [$addr, 'Rue ABC, 5 - 012345 Locality - Belgium']; } public function simpleAddressDataProviderFR(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'France']) ->setCountryCode('FR'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); yield [$addr, '5, Rue ABC - 012345 Locality - France']; } /** * @dataProvider simpleAddressDataProviderBE */ public function testRenderStringSimpleAddressBE(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } /** * @dataProvider simpleAddressDataProviderFR */ public function testRenderStringSimpleAddressFR(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } public function complexAddressDataProviderBE(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'Belgium']) ->setCountryCode('BE'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setBuildingName('Résidence "Les Bleuets"'); $addr->setFlat('1'); $addr->setFloor('2'); $addr->setCorridor('3'); $addr->setSteps('4'); yield [$addr, 'Résidence "Les Bleuets" - appart 1 - ét 2 - coul 3 - esc 4 - Rue ABC, 5 - 012345 Locality - Belgium']; } public function complexAddressDataProviderFR(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'France']) ->setCountryCode('FR'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setBuildingName('Résidence "Les Bleuets"'); $addr->setFlat('1'); $addr->setFloor('2'); $addr->setCorridor('3'); $addr->setSteps('4'); yield [$addr, 'appart 1 - ét 2 - coul 3 - esc 4 - Résidence "Les Bleuets" - 5, Rue ABC - 012345 Locality - France']; } /** * @dataProvider complexAddressDataProviderBE */ public function testRenderComplexAddressBE(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } /** * @dataProvider complexAddressDataProviderFR */ public function testRenderComplexAddressFR(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } public function addressDataProviderBEWithBuilding(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'Belgium']) ->setCountryCode('BE'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setBuildingName('Résidence "Les Bleuets"'); yield [$addr, 'Résidence "Les Bleuets" - Rue ABC, 5 - 012345 Locality - Belgium']; } public function addressDataProviderFRWithBuilding(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'France']) ->setCountryCode('FR'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setBuildingName('Résidence "Les Bleuets"'); yield [$addr, 'Résidence "Les Bleuets" - 5, Rue ABC - 012345 Locality - France']; } /** * @dataProvider addressDataProviderBEWithBuilding */ public function testRenderWithBuildingAddressBE(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } /** * @dataProvider addressDataProviderFRWithBuilding */ public function testRenderWithBuildingAddressFR(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } public function addressDataProviderBEWithSteps(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'Belgium']) ->setCountryCode('BE'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setSteps('4'); yield [$addr, 'esc 4 - Rue ABC, 5 - 012345 Locality - Belgium']; } public function addressDataProviderFRWithSteps(): Iterator { $addr = new Address(); $country = (new Country()) ->setName(['fr' => 'France']) ->setCountryCode('FR'); $postCode = new PostalCode(); $postCode->setName('Locality') ->setCode('012345') ->setCountry($country); $addr->setStreet('Rue ABC') ->setStreetNumber('5') ->setPostcode($postCode); $addr->setSteps('4'); yield [$addr, 'esc 4 - 5, Rue ABC - 012345 Locality - France']; } /** * @dataProvider addressDataProviderBEWithSteps */ public function testRenderWithStepsAddressBE(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } /** * @dataProvider addressDataProviderFRWithSteps */ public function testRenderWithStepsAddressFR(Address $addr, string $expectedString): void { $engine = self::$container->get(EngineInterface::class); $translatableStringHelper = self::$container->get(TranslatableStringHelper::class); $renderer = new AddressRender($engine, $translatableStringHelper); $this->assertEquals($expectedString, $renderer->renderString($addr, [])); return; } }