From d09908cb1da2d8afa74fbe5ee6528262d4fac729 Mon Sep 17 00:00:00 2001 From: Timothy J Warren Date: Thu, 1 Nov 2018 22:16:45 -0400 Subject: [PATCH] Update controller test --- ...AnimeTransformerTest__testTransform__1.php | 5 +- tests/DispatcherTest.php | 72 +++++++++---------- 2 files changed, 37 insertions(+), 40 deletions(-) diff --git a/tests/API/Kitsu/Transformer/__snapshots__/AnimeTransformerTest__testTransform__1.php b/tests/API/Kitsu/Transformer/__snapshots__/AnimeTransformerTest__testTransform__1.php index 50b3f03d..15dcae69 100644 --- a/tests/API/Kitsu/Transformer/__snapshots__/AnimeTransformerTest__testTransform__1.php +++ b/tests/API/Kitsu/Transformer/__snapshots__/AnimeTransformerTest__testTransform__1.php @@ -300,8 +300,9 @@ 'title' => 'Attack on Titan', 'titles' => array ( - 'en_jp' => 'Shingeki no Kyojin', - 'ja_jp' => '進撃の巨人', + 0 => 'Attack on Titan', + 1 => 'Shingeki no Kyojin', + 2 => '進撃の巨人', ), 'trailer_id' => 'n4Nj6Y_SNYI', 'url' => 'https://kitsu.io/anime/attack-on-titan', diff --git a/tests/DispatcherTest.php b/tests/DispatcherTest.php index d658ffd1..a0bcf6b0 100644 --- a/tests/DispatcherTest.php +++ b/tests/DispatcherTest.php @@ -16,6 +16,7 @@ namespace Aviat\AnimeClient\Tests; +use Aviat\AnimeClient\Controller; use Aviat\AnimeClient\Dispatcher; use Aviat\AnimeClient\UrlGenerator; use Aviat\Ion\Config; @@ -65,7 +66,7 @@ class DispatcherTest extends AnimeClientTestCase { public function testRouterSanity() { $this->doSetUp([], '/', 'localhost'); - $this->assertTrue(is_object($this->router)); + $this->assertInternalType('object', $this->router); } public function dataRoute() @@ -109,14 +110,14 @@ class DispatcherTest extends AnimeClientTestCase { 'anime_default_routing_manga' => [ 'config' => $defaultConfig, 'controller' => 'manga', - 'host' => "localhost", - 'uri' => "/manga/plan_to_read", + 'host' => 'localhost', + 'uri' => '/manga/plan_to_read', ], 'manga_default_routing_anime' => [ 'config' => $defaultConfig, 'controller' => 'anime', - 'host' => "localhost", - 'uri' => "/anime/watching", + 'host' => 'localhost', + 'uri' => '/anime/watching', ], 'anime_default_routing_anime' => [ 'config' => $defaultConfig, @@ -148,20 +149,20 @@ class DispatcherTest extends AnimeClientTestCase { $request = $this->container->get('request'); // Check route setup - $this->assertEquals($config['routes'], $this->config->get('routes'), "Incorrect route path"); - $this->assertTrue(is_array($this->router->getOutputRoutes())); + $this->assertEquals($config['routes'], $this->config->get('routes'), 'Incorrect route path'); + $this->assertInternalType('array', $this->router->getOutputRoutes()); // Check environment variables $this->assertEquals($uri, $request->getServerParams()['REQUEST_URI']); $this->assertEquals($host, $request->getServerParams()['HTTP_HOST']); // Make sure the route is an anime type - //$this->assertTrue($matcher->count() > 0, "0 routes"); - $this->assertEquals($controller, $this->router->getController(), "Incorrect Route type"); + //$this->assertTrue($matcher->count() > 0, '0 routes'); + $this->assertEquals($controller, $this->router->getController(), 'Incorrect Route type'); // Make sure the route matches, by checking that it is actually an object $route = $this->router->getRoute(); - $this->assertInstanceOf('Aura\\Router\\Route', $route, "Route is invalid, not matched"); + $this->assertInstanceOf(\Aura\Router\Route::class, $route, 'Route is invalid, not matched'); } public function testDefaultRoute() @@ -170,7 +171,7 @@ class DispatcherTest extends AnimeClientTestCase { 'config' => [ 'anime_path' => 'anime', 'manga_path' => 'manga', - 'default_anime_list_path' => "watching", + 'default_anime_list_path' => 'watching', 'default_manga_list_path' => 'all', 'default_list' => 'manga' ], @@ -194,55 +195,50 @@ class DispatcherTest extends AnimeClientTestCase { $this->expectException(\InvalidArgumentException::class); - $this->doSetUp($config, "/", "localhost"); - $this->assertEquals('//localhost/manga/all', $this->urlGenerator->defaultUrl('manga'), "Incorrect default url"); - $this->assertEquals('//localhost/anime/watching', $this->urlGenerator->defaultUrl('anime'), "Incorrect default url"); + $this->doSetUp($config, '/', 'localhost'); + $this->assertEquals('//localhost/manga/all', $this->urlGenerator->defaultUrl('manga'), 'Incorrect default url'); + $this->assertEquals('//localhost/anime/watching', $this->urlGenerator->defaultUrl('anime'), 'Incorrect default url'); $this->urlGenerator->defaultUrl('foo'); } public function dataGetControllerList() { + $expectedList = [ + 'anime' => Controller\Anime::class, + 'anime-collection' => Controller\AnimeCollection::class, + 'character' => Controller\Character::class, + 'misc' => Controller\Misc::class, + 'manga' => Controller\Manga::class, + 'manga-collection' => Controller\MangaCollection::class, + 'people' => Controller\People::class, + 'settings' => Controller\Settings::class, + 'user' => Controller\User::class, + 'images' => Controller\Images::class, + ]; + return [ 'controller_list_sanity_check' => [ 'config' => [ 'anime_path' => 'anime', 'manga_path' => 'manga', - 'default_anime_list_path' => "watching", + 'default_anime_list_path' => 'watching', 'default_manga_list_path' => 'all', 'default_list' => 'manga', 'routes' => [], ], - 'expected' => [ - 'anime' => 'Aviat\AnimeClient\Controller\Anime', - 'manga' => 'Aviat\AnimeClient\Controller\Manga', - 'anime-collection' => 'Aviat\AnimeClient\Controller\AnimeCollection', - 'manga-collection' => 'Aviat\AnimeClient\Controller\MangaCollection', - 'people' => 'Aviat\AnimeClient\Controller\People', - 'character' => 'Aviat\AnimeClient\Controller\Character', - 'index' => 'Aviat\AnimeClient\Controller\Index', - ] + 'expected' => $expectedList, ], 'empty_controller_list' => [ 'config' => [ - 'routes' => [ - - ], 'anime_path' => 'anime', 'manga_path' => 'manga', - 'default_anime_path' => "/anime/watching", + 'default_anime_path' => '/anime/watching', 'default_manga_path' => '/manga/all', - 'default_list' => 'manga' + 'default_list' => 'manga', + 'routes' => [], ], - 'expected' => [ - 'anime' => 'Aviat\AnimeClient\Controller\Anime', - 'manga' => 'Aviat\AnimeClient\Controller\Manga', - 'anime-collection' => 'Aviat\AnimeClient\Controller\AnimeCollection', - 'manga-collection' => 'Aviat\AnimeClient\Controller\MangaCollection', - 'people' => 'Aviat\AnimeClient\Controller\People', - 'character' => 'Aviat\AnimeClient\Controller\Character', - 'index' => 'Aviat\AnimeClient\Controller\Index', - ] + 'expected' => $expectedList ] ]; }