/** * @test * @todo see comments */ public function shouldBeFunctional() { $this->setUp(); $this->assertEquals('/sIJyCJedGlZf1TId41gCtkblBGo.jpg', $this->tv->getBackdropPath()); // created by $this->assertEquals(2, count($this->tv->getEpisodeRunTime())); $this->assertEquals(new \DateTime('2008-01-19'), $this->tv->getFirstAirDate()); // genres $this->assertEquals('http://www.amctv.com/shows/breaking-bad', $this->tv->getHomepage()); $this->assertEquals(1396, $this->tv->getId()); $this->assertEquals(false, $this->tv->getInProduction()); // languages $this->assertEquals(new \DateTime('2013-09-29'), $this->tv->getLastAirDate()); $this->assertEquals('Breaking Bad', $this->tv->getName()); // networks $this->assertEquals(62, $this->tv->getNumberOfEpisodes()); $this->assertEquals(5, $this->tv->getNumberOfSeasons()); $this->assertEquals('Breaking Bad', $this->tv->getOriginalName()); // origin_country $this->assertEquals('external', $this->tv->getOverview()); $this->assertEquals(8.14745667435, $this->tv->getPopularity()); $this->assertEquals('/iRDNn9EHKuBhGa77UBteazvsZa1.jpg', $this->tv->getPosterPath()); // seasons $this->assertEquals('Ended', $this->tv->getStatus()); $this->assertEquals(8.9, $this->tv->getVoteAverage()); $this->assertEquals(37, $this->tv->getVoteCount()); // credits // external_ids // images // translations }
/** * @param FixtureEpisodeData $fixture * @param Tv|null $result * * @return null|\Tmdb\Model\AbstractModel|Tv\Episode */ public function resolveSingle(FixtureEpisodeData $fixture, Tv $result = null) { if ($result === null) { return null; } $item = null; try { $repo = $this->getSingleRepository(); $item = $repo->load($result->getId(), $fixture->getSeasonNumber(), $fixture->getEpisodeNumberStart()); } catch (\Exception $e) { } return $item instanceof Tv\Episode ? $item : null; }
/** * @param FixtureEpisodeData $f * @param Tv\Episode $e * @param Tv $s */ private function writeLookupSuccessEpisode(FixtureEpisodeData $f, Tv\Episode $e, Tv $s) { try { $fileSize = $f->getFile()->getSizeHuman(); } catch (\RuntimeException $e) { $fileSize = 'UNKNOWN'; $this->io()->warning(sprintf('An error occured while retrieving the file size for %s', $f->getFile()->getPathname())); } $country = ''; $countrySet = $s->getOriginCountry(); if ($countrySet->count() > 0) { $countryKey = $countrySet->getKeys()[0]; $country = $countrySet->get($countryKey)->getIso31661(); } $rows = [['Tvdb Id', $s->getId() . '/' . $e->getId()], ['File Path', $f->getFile()->getPathname()], ['Show Name', $s->getName()], ['Season', $e->getSeasonNumber()], ['Episode Number', $e->getEpisodeNumber()], ['Episode Title', $e->getName()], ['Origin Country', $country], ['Air Date', $e->getAirDate()->format('Y\\-m\\-d')], ['Size', $fileSize], ['API Match', sprintf('<fg=green>OKAY: %d/%d</>', $s->getId(), $e->getId())]]; $this->ioVerbose(function (StyleInterface $style) use($rows) { $style->table($rows, []); }); $rows = [['File Path', $f->getFile()->getPathname()], ['Show Name', $s->getName()], ['Season/Episode', sprintf('%d/%d', $e->getSeasonNumber(), $e->getEpisodeNumber())], ['Episode Title', $e->getName()], ['Size', $fileSize], ['API Match', sprintf('<fg=green>OKAY: %d/%d</>', $s->getId(), $e->getId())]]; $this->ioNotVerbose(function (StyleInterface $style) use($rows) { $style->table($rows, []); }); }