From 9cab8ae58a29ecf7387e6865aa170715caeabf04 Mon Sep 17 00:00:00 2001 From: Stefan Parviainen Date: Tue, 30 Dec 2014 19:57:12 +0100 Subject: Language names via intl library. Fixes #773 --- .../intl/tests/Language/LanguageRepositoryTest.php | 92 ++++++++++++++++++++++ library/intl/tests/Language/LanguageTest.php | 53 +++++++++++++ 2 files changed, 145 insertions(+) create mode 100644 library/intl/tests/Language/LanguageRepositoryTest.php create mode 100644 library/intl/tests/Language/LanguageTest.php (limited to 'library/intl/tests/Language') diff --git a/library/intl/tests/Language/LanguageRepositoryTest.php b/library/intl/tests/Language/LanguageRepositoryTest.php new file mode 100644 index 000000000..ea52cbf4c --- /dev/null +++ b/library/intl/tests/Language/LanguageRepositoryTest.php @@ -0,0 +1,92 @@ + array( + 'code' => 'en', + 'name' => 'English', + ), + 'fr' => array( + 'code' => 'fr', + 'name' => 'French', + ), + ); + + /** + * @covers ::__construct + */ + public function testConstructor() + { + // Mock the existence of JSON definitions on the filesystem. + $root = vfsStream::setup('resources'); + vfsStream::newFile('language/en.json')->at($root)->setContent(json_encode($this->englishDefinitions)); + + // Instantiate the language repository and confirm that the definition path + // was properly set. + $languageRepository = new LanguageRepository('vfs://resources/language/'); + $definitionPath = $this->getObjectAttribute($languageRepository, 'definitionPath'); + $this->assertEquals('vfs://resources/language/', $definitionPath); + + return $languageRepository; + } + + /** + * @covers ::get + * @covers ::loadDefinitions + * @covers ::createLanguageFromDefinition + * @uses \CommerceGuys\Intl\Language\Language + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @depends testConstructor + */ + public function testGet($languageRepository) + { + $language = $languageRepository->get('en'); + $this->assertInstanceOf('CommerceGuys\\Intl\\Language\\Language', $language); + $this->assertEquals('en', $language->getLanguageCode()); + $this->assertEquals('English', $language->getName()); + $this->assertEquals('en', $language->getLocale()); + } + + /** + * @covers ::get + * @covers ::loadDefinitions + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @expectedException \CommerceGuys\Intl\Exception\UnknownLanguageException + * @depends testConstructor + */ + public function testGetInvalidLanguage($languageRepository) + { + $languageRepository->get('de'); + } + + /** + * @covers ::getAll + * @covers ::loadDefinitions + * @covers ::createLanguageFromDefinition + * @uses \CommerceGuys\Intl\Language\Language + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @depends testConstructor + */ + public function testGetAll($languageRepository) + { + $languages = $languageRepository->getAll(); + $this->assertArrayHasKey('en', $languages); + $this->assertArrayHasKey('fr', $languages); + $this->assertEquals('en', $languages['en']->getLanguageCode()); + $this->assertEquals('fr', $languages['fr']->getLanguageCode()); + } +} diff --git a/library/intl/tests/Language/LanguageTest.php b/library/intl/tests/Language/LanguageTest.php new file mode 100644 index 000000000..037483c88 --- /dev/null +++ b/library/intl/tests/Language/LanguageTest.php @@ -0,0 +1,53 @@ +language = new Language(); + } + + /** + * @covers ::getLanguageCode + * @covers ::setLanguageCode + * @covers ::__toString + */ + public function testLanguageCode() + { + $this->language->setLanguageCode('en'); + $this->assertEquals('en', $this->language->getLanguageCode()); + $this->assertEquals('en', (string) $this->language); + } + + /** + * @covers ::getName + * @covers ::setName + */ + public function testName() + { + $this->language->setName('English'); + $this->assertEquals('English', $this->language->getName()); + } + + /** + * @covers ::getLocale + * @covers ::setLocale + */ + public function testLocale() + { + $this->language->setLocale('en'); + $this->assertEquals('en', $this->language->getLocale()); + } +} -- cgit v1.2.3 From 4f35efa0bad4ae6489b63f3eebafe6542d654094 Mon Sep 17 00:00:00 2001 From: RedMatrix Date: Wed, 31 Dec 2014 10:43:19 +1100 Subject: Revert "Language names via intl library." --- .../intl/tests/Language/LanguageRepositoryTest.php | 92 ---------------------- library/intl/tests/Language/LanguageTest.php | 53 ------------- 2 files changed, 145 deletions(-) delete mode 100644 library/intl/tests/Language/LanguageRepositoryTest.php delete mode 100644 library/intl/tests/Language/LanguageTest.php (limited to 'library/intl/tests/Language') diff --git a/library/intl/tests/Language/LanguageRepositoryTest.php b/library/intl/tests/Language/LanguageRepositoryTest.php deleted file mode 100644 index ea52cbf4c..000000000 --- a/library/intl/tests/Language/LanguageRepositoryTest.php +++ /dev/null @@ -1,92 +0,0 @@ - array( - 'code' => 'en', - 'name' => 'English', - ), - 'fr' => array( - 'code' => 'fr', - 'name' => 'French', - ), - ); - - /** - * @covers ::__construct - */ - public function testConstructor() - { - // Mock the existence of JSON definitions on the filesystem. - $root = vfsStream::setup('resources'); - vfsStream::newFile('language/en.json')->at($root)->setContent(json_encode($this->englishDefinitions)); - - // Instantiate the language repository and confirm that the definition path - // was properly set. - $languageRepository = new LanguageRepository('vfs://resources/language/'); - $definitionPath = $this->getObjectAttribute($languageRepository, 'definitionPath'); - $this->assertEquals('vfs://resources/language/', $definitionPath); - - return $languageRepository; - } - - /** - * @covers ::get - * @covers ::loadDefinitions - * @covers ::createLanguageFromDefinition - * @uses \CommerceGuys\Intl\Language\Language - * @uses \CommerceGuys\Intl\LocaleResolverTrait - * @depends testConstructor - */ - public function testGet($languageRepository) - { - $language = $languageRepository->get('en'); - $this->assertInstanceOf('CommerceGuys\\Intl\\Language\\Language', $language); - $this->assertEquals('en', $language->getLanguageCode()); - $this->assertEquals('English', $language->getName()); - $this->assertEquals('en', $language->getLocale()); - } - - /** - * @covers ::get - * @covers ::loadDefinitions - * @uses \CommerceGuys\Intl\LocaleResolverTrait - * @expectedException \CommerceGuys\Intl\Exception\UnknownLanguageException - * @depends testConstructor - */ - public function testGetInvalidLanguage($languageRepository) - { - $languageRepository->get('de'); - } - - /** - * @covers ::getAll - * @covers ::loadDefinitions - * @covers ::createLanguageFromDefinition - * @uses \CommerceGuys\Intl\Language\Language - * @uses \CommerceGuys\Intl\LocaleResolverTrait - * @depends testConstructor - */ - public function testGetAll($languageRepository) - { - $languages = $languageRepository->getAll(); - $this->assertArrayHasKey('en', $languages); - $this->assertArrayHasKey('fr', $languages); - $this->assertEquals('en', $languages['en']->getLanguageCode()); - $this->assertEquals('fr', $languages['fr']->getLanguageCode()); - } -} diff --git a/library/intl/tests/Language/LanguageTest.php b/library/intl/tests/Language/LanguageTest.php deleted file mode 100644 index 037483c88..000000000 --- a/library/intl/tests/Language/LanguageTest.php +++ /dev/null @@ -1,53 +0,0 @@ -language = new Language(); - } - - /** - * @covers ::getLanguageCode - * @covers ::setLanguageCode - * @covers ::__toString - */ - public function testLanguageCode() - { - $this->language->setLanguageCode('en'); - $this->assertEquals('en', $this->language->getLanguageCode()); - $this->assertEquals('en', (string) $this->language); - } - - /** - * @covers ::getName - * @covers ::setName - */ - public function testName() - { - $this->language->setName('English'); - $this->assertEquals('English', $this->language->getName()); - } - - /** - * @covers ::getLocale - * @covers ::setLocale - */ - public function testLocale() - { - $this->language->setLocale('en'); - $this->assertEquals('en', $this->language->getLocale()); - } -} -- cgit v1.2.3 From 7bf7f8180dbc3a89824815de3bc1e4f40857d2f6 Mon Sep 17 00:00:00 2001 From: Stefan Parviainen Date: Wed, 31 Dec 2014 10:42:08 +0100 Subject: Revert "Revert "Language names via intl library."" This reverts commit 4f35efa0bad4ae6489b63f3eebafe6542d654094. --- .../intl/tests/Language/LanguageRepositoryTest.php | 92 ++++++++++++++++++++++ library/intl/tests/Language/LanguageTest.php | 53 +++++++++++++ 2 files changed, 145 insertions(+) create mode 100644 library/intl/tests/Language/LanguageRepositoryTest.php create mode 100644 library/intl/tests/Language/LanguageTest.php (limited to 'library/intl/tests/Language') diff --git a/library/intl/tests/Language/LanguageRepositoryTest.php b/library/intl/tests/Language/LanguageRepositoryTest.php new file mode 100644 index 000000000..ea52cbf4c --- /dev/null +++ b/library/intl/tests/Language/LanguageRepositoryTest.php @@ -0,0 +1,92 @@ + array( + 'code' => 'en', + 'name' => 'English', + ), + 'fr' => array( + 'code' => 'fr', + 'name' => 'French', + ), + ); + + /** + * @covers ::__construct + */ + public function testConstructor() + { + // Mock the existence of JSON definitions on the filesystem. + $root = vfsStream::setup('resources'); + vfsStream::newFile('language/en.json')->at($root)->setContent(json_encode($this->englishDefinitions)); + + // Instantiate the language repository and confirm that the definition path + // was properly set. + $languageRepository = new LanguageRepository('vfs://resources/language/'); + $definitionPath = $this->getObjectAttribute($languageRepository, 'definitionPath'); + $this->assertEquals('vfs://resources/language/', $definitionPath); + + return $languageRepository; + } + + /** + * @covers ::get + * @covers ::loadDefinitions + * @covers ::createLanguageFromDefinition + * @uses \CommerceGuys\Intl\Language\Language + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @depends testConstructor + */ + public function testGet($languageRepository) + { + $language = $languageRepository->get('en'); + $this->assertInstanceOf('CommerceGuys\\Intl\\Language\\Language', $language); + $this->assertEquals('en', $language->getLanguageCode()); + $this->assertEquals('English', $language->getName()); + $this->assertEquals('en', $language->getLocale()); + } + + /** + * @covers ::get + * @covers ::loadDefinitions + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @expectedException \CommerceGuys\Intl\Exception\UnknownLanguageException + * @depends testConstructor + */ + public function testGetInvalidLanguage($languageRepository) + { + $languageRepository->get('de'); + } + + /** + * @covers ::getAll + * @covers ::loadDefinitions + * @covers ::createLanguageFromDefinition + * @uses \CommerceGuys\Intl\Language\Language + * @uses \CommerceGuys\Intl\LocaleResolverTrait + * @depends testConstructor + */ + public function testGetAll($languageRepository) + { + $languages = $languageRepository->getAll(); + $this->assertArrayHasKey('en', $languages); + $this->assertArrayHasKey('fr', $languages); + $this->assertEquals('en', $languages['en']->getLanguageCode()); + $this->assertEquals('fr', $languages['fr']->getLanguageCode()); + } +} diff --git a/library/intl/tests/Language/LanguageTest.php b/library/intl/tests/Language/LanguageTest.php new file mode 100644 index 000000000..037483c88 --- /dev/null +++ b/library/intl/tests/Language/LanguageTest.php @@ -0,0 +1,53 @@ +language = new Language(); + } + + /** + * @covers ::getLanguageCode + * @covers ::setLanguageCode + * @covers ::__toString + */ + public function testLanguageCode() + { + $this->language->setLanguageCode('en'); + $this->assertEquals('en', $this->language->getLanguageCode()); + $this->assertEquals('en', (string) $this->language); + } + + /** + * @covers ::getName + * @covers ::setName + */ + public function testName() + { + $this->language->setName('English'); + $this->assertEquals('English', $this->language->getName()); + } + + /** + * @covers ::getLocale + * @covers ::setLocale + */ + public function testLocale() + { + $this->language->setLocale('en'); + $this->assertEquals('en', $this->language->getLocale()); + } +} -- cgit v1.2.3