. */ declare(strict_types=1); namespace Fisharebest\Webtrees; use Fisharebest\Webtrees\SurnameTradition\DefaultSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\IcelandicSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\LithuanianSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\MatrilinealSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\PaternalSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\PatrilinealSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\PolishSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\PortugueseSurnameTradition; use Fisharebest\Webtrees\SurnameTradition\SpanishSurnameTradition; /** * Test harness for the class SurnameTradition */ class SurnameTraditionTest extends TestCase { /** * @covers \Fisharebest\Webtrees\SurnameTradition::create * @return void */ public function testCreate(): void { self::assertInstanceOf(DefaultSurnameTradition::class, SurnameTradition::create('none')); self::assertInstanceOf(IcelandicSurnameTradition::class, SurnameTradition::create('icelandic')); self::assertInstanceOf(LithuanianSurnameTradition::class, SurnameTradition::create('lithuanian')); self::assertInstanceOf(MatrilinealSurnameTradition::class, SurnameTradition::create('matrilineal')); self::assertInstanceOf(PaternalSurnameTradition::class, SurnameTradition::create('paternal')); self::assertInstanceOf(PatrilinealSurnameTradition::class, SurnameTradition::create('patrilineal')); self::assertInstanceOf(PolishSurnameTradition::class, SurnameTradition::create('polish')); self::assertInstanceOf(PortugueseSurnameTradition::class, SurnameTradition::create('portuguese')); self::assertInstanceOf(SpanishSurnameTradition::class, SurnameTradition::create('spanish')); } /** * Test create() with invalid input * * @covers \Fisharebest\Webtrees\SurnameTradition::create * @return void */ public function testCreateInvalid(): void { self::assertInstanceOf(DefaultSurnameTradition::class, SurnameTradition::create('FOOBAR')); } /** * Test allDescriptions() * * @covers \Fisharebest\Webtrees\SurnameTradition::allDescriptions * @return void */ public function testAllDescriptions(): void { $descriptions = SurnameTradition::allDescriptions(); self::assertCount(9, $descriptions); } }