[null, 'fr-BE'], 'eastAsia' => [null, 'ja-JP'], 'bidirectional' => [null, 'ar-SA'], 'langId' => [null, 1036], ]; foreach ($properties as $property => $value) { [$default, $expected] = $value; $get = "get{$property}"; $set = "set{$property}"; self::assertEquals($default, $object->$get()); // Default value $object->$set($expected); self::assertEquals($expected, $object->$get()); // New value } } /** * Test throws exception if wrong locale is given. */ public function testWrongLanguage(): void { $this->expectException(InvalidArgumentException::class); $language = new Language(); $language->setLatin('fra'); } /** * Tests that a language can be set with just a 2 char code. */ public function testShortLanguage(): void { //when $language = new Language(); $language->setLatin('fr'); //then Assert::assertEquals('fr-FR', $language->getLatin()); } }