From fe09f769e3cc9ba01601c6905d10ce61c5d15652 Mon Sep 17 00:00:00 2001 From: shibafu Date: Sun, 16 Jun 2019 22:33:15 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MetadataResolver/SteamResolverTest.php | 55 +++++++++++++++++++ tests/fixture/Steam/test.json | 10 ++++ tests/fixture/Steam/testNotFound.json | 1 + tests/fixture/Steam/testR18.json | 10 ++++ 4 files changed, 76 insertions(+) create mode 100644 tests/Unit/MetadataResolver/SteamResolverTest.php create mode 100644 tests/fixture/Steam/test.json create mode 100644 tests/fixture/Steam/testNotFound.json create mode 100644 tests/fixture/Steam/testR18.json diff --git a/tests/Unit/MetadataResolver/SteamResolverTest.php b/tests/Unit/MetadataResolver/SteamResolverTest.php new file mode 100644 index 0000000..81c6653 --- /dev/null +++ b/tests/Unit/MetadataResolver/SteamResolverTest.php @@ -0,0 +1,55 @@ +shouldUseMock()) { + sleep(1); + } + } + + public function test() + { + $responseText = file_get_contents(__DIR__ . '/../../fixture/Steam/test.json'); + + $this->createResolver(SteamResolver::class, $responseText); + + $metadata = $this->resolver->resolve('https://store.steampowered.com/app/333600'); + $this->assertEquals('NEKOPARA Vol. 1', $metadata->title); + $this->assertEquals('水無月嘉祥(みなづき かしょう)は伝統ある老舗和菓子屋である実家を出て、 パティシエとして自身のケーキ屋『ラ・ソレイユ』を一人で開店する。 しかし実家から送った引っ越し荷物の中に、 実家で飼っていた人型ネコのショコラとバニラが紛れ込んでいた。', $metadata->description); + $this->assertEquals('https://steamcdn-a.akamaihd.net/steam/apps/333600/header.jpg?t=1558382831', $metadata->image); + } + + public function testR18() + { + $responseText = file_get_contents(__DIR__ . '/../../fixture/Steam/testR18.json'); + + $this->createResolver(SteamResolver::class, $responseText); + + $metadata = $this->resolver->resolve('https://store.steampowered.com/app/1077580'); + $this->assertEquals('Broke Girl | 負債千金', $metadata->title); + $this->assertEquals('苦労知らずに育ったお嬢様は一夜にして1000万の借金を背負うことになった。借金を返済するために働かなければならない。しかし世間には悪意が満ちており、男達はお金で彼女を誘うか凌辱することしか考えていない。', $metadata->description); + $this->assertEquals('https://steamcdn-a.akamaihd.net/steam/apps/1077580/header.jpg?t=1559506319', $metadata->image); + } + + public function testNotFound() + { + $this->expectException(\RuntimeException::class); + + $responseText = file_get_contents(__DIR__ . '/../../fixture/Steam/testNotFound.json'); + + $this->createResolver(SteamResolver::class, $responseText); + + $this->resolver->resolve('https://store.steampowered.com/app/1'); + } +} diff --git a/tests/fixture/Steam/test.json b/tests/fixture/Steam/test.json new file mode 100644 index 0000000..3c238f4 --- /dev/null +++ b/tests/fixture/Steam/test.json @@ -0,0 +1,10 @@ +{ + "333600": { + "success": true, + "data": { + "name": "NEKOPARA Vol. 1", + "short_description": "水無月嘉祥(みなづき かしょう)は伝統ある老舗和菓子屋である実家を出て、 パティシエとして自身のケーキ屋『ラ・ソレイユ』を一人で開店する。 しかし実家から送った引っ越し荷物の中に、 実家で飼っていた人型ネコのショコラとバニラが紛れ込んでいた。", + "header_image": "https://steamcdn-a.akamaihd.net/steam/apps/333600/header.jpg?t=1558382831" + } + } +} diff --git a/tests/fixture/Steam/testNotFound.json b/tests/fixture/Steam/testNotFound.json new file mode 100644 index 0000000..0c538d2 --- /dev/null +++ b/tests/fixture/Steam/testNotFound.json @@ -0,0 +1 @@ +{"1":{"success":false}} \ No newline at end of file diff --git a/tests/fixture/Steam/testR18.json b/tests/fixture/Steam/testR18.json new file mode 100644 index 0000000..5edf5a1 --- /dev/null +++ b/tests/fixture/Steam/testR18.json @@ -0,0 +1,10 @@ +{ + "1077580": { + "success": true, + "data": { + "name": "Broke Girl | 負債千金", + "short_description": "苦労知らずに育ったお嬢様は一夜にして1000万の借金を背負うことになった。借金を返済するために働かなければならない。しかし世間には悪意が満ちており、男達はお金で彼女を誘うか凌辱することしか考えていない。", + "header_image": "https://steamcdn-a.akamaihd.net/steam/apps/1077580/header.jpg?t=1559506319" + } + } +}