X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2Fapi%2FApiUtilsTest.php;h=7efec9bb98f6aa74bea0b2d572e7142bb94ad7a9;hb=24225f63324bd1118b008518abfc82a136ad997e;hp=62baf4c52f606d9dd8918ac821cec6dbbc73a989;hpb=77de24876ff542e3770aa2845e993c58f87e37df;p=github%2Fshaarli%2FShaarli.git diff --git a/tests/api/ApiUtilsTest.php b/tests/api/ApiUtilsTest.php index 62baf4c5..7efec9bb 100644 --- a/tests/api/ApiUtilsTest.php +++ b/tests/api/ApiUtilsTest.php @@ -2,13 +2,13 @@ namespace Shaarli\Api; -use Shaarli\Base64Url; - +use Shaarli\Bookmark\Bookmark; +use Shaarli\Http\Base64Url; /** * Class ApiUtilsTest */ -class ApiUtilsTest extends \PHPUnit_Framework_TestCase +class ApiUtilsTest extends \PHPUnit\Framework\TestCase { /** * Force the timezone for ISO datetimes. @@ -34,7 +34,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase $payload = Base64Url::encode('{ "iat": '. time() .' }'); - $signature = Base64Url::encode(hash_hmac('sha512', $header .'.'. $payload , $secret, true)); + $signature = Base64Url::encode(hash_hmac('sha512', $header .'.'. $payload, $secret, true)); return $header .'.'. $payload .'.'. $signature; } @@ -61,7 +61,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase public function testValidateJwtTokenValid() { $secret = 'WarIsPeace'; - ApiUtils::validateJwtToken(self::generateValidJwtToken($secret), $secret); + $this->assertTrue(ApiUtils::validateJwtToken(self::generateValidJwtToken($secret), $secret)); } /** @@ -213,7 +213,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase public function testFormatLinkComplete() { $indexUrl = 'https://domain.tld/sub/'; - $link = [ + $data = [ 'id' => 12, 'url' => 'http://lol.lol', 'shorturl' => 'abc', @@ -224,6 +224,8 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'created' => \DateTime::createFromFormat('Ymd_His', '20170107_160102'), 'updated' => \DateTime::createFromFormat('Ymd_His', '20170107_160612'), ]; + $bookmark = new Bookmark(); + $bookmark->fromArray($data); $expected = [ 'id' => 12, @@ -237,7 +239,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'updated' => '2017-01-07T16:06:12+00:00', ]; - $this->assertEquals($expected, ApiUtils::formatLink($link, $indexUrl)); + $this->assertEquals($expected, ApiUtils::formatLink($bookmark, $indexUrl)); } /** @@ -246,7 +248,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase public function testFormatLinkMinimalNote() { $indexUrl = 'https://domain.tld/sub/'; - $link = [ + $data = [ 'id' => 12, 'url' => '?abc', 'shorturl' => 'abc', @@ -256,6 +258,8 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'private' => '', 'created' => \DateTime::createFromFormat('Ymd_His', '20170107_160102'), ]; + $bookmark = new Bookmark(); + $bookmark->fromArray($data); $expected = [ 'id' => 12, @@ -269,7 +273,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'updated' => '', ]; - $this->assertEquals($expected, ApiUtils::formatLink($link, $indexUrl)); + $this->assertEquals($expected, ApiUtils::formatLink($bookmark, $indexUrl)); } /** @@ -278,7 +282,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase public function testUpdateLink() { $created = \DateTime::createFromFormat('Ymd_His', '20170107_160102'); - $old = [ + $data = [ 'id' => 12, 'url' => '?abc', 'shorturl' => 'abc', @@ -288,8 +292,10 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'private' => '', 'created' => $created, ]; + $old = new Bookmark(); + $old->fromArray($data); - $new = [ + $data = [ 'id' => 13, 'shorturl' => 'nope', 'url' => 'http://somewhere.else', @@ -300,17 +306,18 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'created' => 'creation', 'updated' => 'updation', ]; + $new = new Bookmark(); + $new->fromArray($data); $result = ApiUtils::updateLink($old, $new); - $this->assertEquals(12, $result['id']); - $this->assertEquals('http://somewhere.else', $result['url']); - $this->assertEquals('abc', $result['shorturl']); - $this->assertEquals('Le Cid', $result['title']); - $this->assertEquals('Percé jusques au fond du cœur [...]', $result['description']); - $this->assertEquals('corneille rodrigue', $result['tags']); - $this->assertEquals(true, $result['private']); - $this->assertEquals($created, $result['created']); - $this->assertTrue(new \DateTime('5 seconds ago') < $result['updated']); + $this->assertEquals(12, $result->getId()); + $this->assertEquals('http://somewhere.else', $result->getUrl()); + $this->assertEquals('abc', $result->getShortUrl()); + $this->assertEquals('Le Cid', $result->getTitle()); + $this->assertEquals('Percé jusques au fond du cœur [...]', $result->getDescription()); + $this->assertEquals('corneille rodrigue', $result->getTagsString()); + $this->assertEquals(true, $result->isPrivate()); + $this->assertEquals($created, $result->getCreated()); } /** @@ -319,7 +326,7 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase public function testUpdateLinkMinimal() { $created = \DateTime::createFromFormat('Ymd_His', '20170107_160102'); - $old = [ + $data = [ 'id' => 12, 'url' => '?abc', 'shorturl' => 'abc', @@ -329,24 +336,19 @@ class ApiUtilsTest extends \PHPUnit_Framework_TestCase 'private' => true, 'created' => $created, ]; + $old = new Bookmark(); + $old->fromArray($data); - $new = [ - 'url' => '', - 'title' => '', - 'description' => '', - 'tags' => '', - 'private' => false, - ]; + $new = new Bookmark(); $result = ApiUtils::updateLink($old, $new); - $this->assertEquals(12, $result['id']); - $this->assertEquals('?abc', $result['url']); - $this->assertEquals('abc', $result['shorturl']); - $this->assertEquals('?abc', $result['title']); - $this->assertEquals('', $result['description']); - $this->assertEquals('', $result['tags']); - $this->assertEquals(false, $result['private']); - $this->assertEquals($created, $result['created']); - $this->assertTrue(new \DateTime('5 seconds ago') < $result['updated']); + $this->assertEquals(12, $result->getId()); + $this->assertEquals('', $result->getUrl()); + $this->assertEquals('abc', $result->getShortUrl()); + $this->assertEquals('', $result->getTitle()); + $this->assertEquals('', $result->getDescription()); + $this->assertEquals('', $result->getTagsString()); + $this->assertEquals(false, $result->isPrivate()); + $this->assertEquals($created, $result->getCreated()); } }