From 75b91dc26b056f4457f9c103e356bd2d16cab80b Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Wed, 18 Dec 2019 15:26:23 +0100 Subject: [PATCH] Hardcoded different creation dates for fixture short URLs to avoid random API test failures --- module/Rest/test-api/Action/ListShortUrlsTest.php | 6 +++--- module/Rest/test-api/Fixtures/ShortUrlsFixture.php | 14 +++++++------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/module/Rest/test-api/Action/ListShortUrlsTest.php b/module/Rest/test-api/Action/ListShortUrlsTest.php index eaa13a0a..0952a627 100644 --- a/module/Rest/test-api/Action/ListShortUrlsTest.php +++ b/module/Rest/test-api/Action/ListShortUrlsTest.php @@ -46,7 +46,7 @@ class ListShortUrlsTest extends ApiTestCase 'longUrl' => 'https://blog.alejandrocelaya.com/2017/12/09' . '/acmailer-7-0-the-most-important-release-in-a-long-time/', - 'dateCreated' => '2019-01-01T00:00:00+00:00', + 'dateCreated' => '2019-01-01T00:00:10+00:00', 'visitsCount' => 2, 'tags' => ['bar', 'foo'], 'meta' => [ @@ -62,7 +62,7 @@ class ListShortUrlsTest extends ApiTestCase 'shortCode' => 'custom', 'shortUrl' => 'http://doma.in/custom', 'longUrl' => 'https://shlink.io', - 'dateCreated' => '2019-01-01T00:00:00+00:00', + 'dateCreated' => '2019-01-01T00:00:20+00:00', 'visitsCount' => 0, 'tags' => [], 'meta' => [ @@ -78,7 +78,7 @@ class ListShortUrlsTest extends ApiTestCase 'longUrl' => 'https://blog.alejandrocelaya.com/2019/04/27' . '/considerations-to-properly-use-open-source-software-projects/', - 'dateCreated' => '2019-01-01T00:00:00+00:00', + 'dateCreated' => '2019-01-01T00:00:30+00:00', 'visitsCount' => 0, 'tags' => [], 'meta' => [ diff --git a/module/Rest/test-api/Fixtures/ShortUrlsFixture.php b/module/Rest/test-api/Fixtures/ShortUrlsFixture.php index 62ec00a9..cc359047 100644 --- a/module/Rest/test-api/Fixtures/ShortUrlsFixture.php +++ b/module/Rest/test-api/Fixtures/ShortUrlsFixture.php @@ -22,32 +22,32 @@ class ShortUrlsFixture extends AbstractFixture { $abcShortUrl = $this->setShortUrlDate( new ShortUrl('https://shlink.io', ShortUrlMeta::createFromRawData(['customSlug' => 'abc123'])), - Chronos::parse('2018-05-01') + '2018-05-01' ); $manager->persist($abcShortUrl); $defShortUrl = $this->setShortUrlDate(new ShortUrl( 'https://blog.alejandrocelaya.com/2017/12/09/acmailer-7-0-the-most-important-release-in-a-long-time/', ShortUrlMeta::createFromParams(Chronos::parse('2020-05-01'), null, 'def456') - )); + ), '2019-01-01 00:00:10'); $manager->persist($defShortUrl); $customShortUrl = $this->setShortUrlDate(new ShortUrl( 'https://shlink.io', ShortUrlMeta::createFromParams(null, null, 'custom', 2) - )); + ), '2019-01-01 00:00:20'); $manager->persist($customShortUrl); $withDomainShortUrl = $this->setShortUrlDate(new ShortUrl( 'https://blog.alejandrocelaya.com/2019/04/27/considerations-to-properly-use-open-source-software-projects/', ShortUrlMeta::createFromRawData(['domain' => 'example.com', 'customSlug' => 'ghi789']) - )); + ), '2019-01-01 00:00:30'); $manager->persist($withDomainShortUrl); $withDomainAndSlugShortUrl = $this->setShortUrlDate(new ShortUrl( 'https://google.com', ShortUrlMeta::createFromRawData(['domain' => 'some-domain.com', 'customSlug' => 'custom-with-domain']) - ), Chronos::parse('2018-10-20')); + ), '2018-10-20'); $manager->persist($withDomainAndSlugShortUrl); $manager->flush(); @@ -56,12 +56,12 @@ class ShortUrlsFixture extends AbstractFixture $this->addReference('def456_short_url', $defShortUrl); } - private function setShortUrlDate(ShortUrl $shortUrl, ?Chronos $date = null): ShortUrl + private function setShortUrlDate(ShortUrl $shortUrl, string $date): ShortUrl { $ref = new ReflectionObject($shortUrl); $dateProp = $ref->getProperty('dateCreated'); $dateProp->setAccessible(true); - $dateProp->setValue($shortUrl, $date ?? Chronos::parse('2019-01-01')); + $dateProp->setValue($shortUrl, Chronos::parse($date)); return $shortUrl; }