diff options
author | ArthurHoaro <arthur@hoa.ro> | 2020-10-29 16:03:07 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-29 16:03:07 +0100 |
commit | dff039092d180fffa89e7d88f7a4b7bc24dfc80f (patch) | |
tree | 7430bf86688b136e442774b1035a9c3be2418875 | |
parent | 14c9370b4f712c8f5b48d46535cc3e8e5506c68a (diff) | |
parent | b37ca790729125fa0df956220a4062f1d34c57e7 (diff) | |
download | Shaarli-dff039092d180fffa89e7d88f7a4b7bc24dfc80f.tar.gz Shaarli-dff039092d180fffa89e7d88f7a4b7bc24dfc80f.tar.zst Shaarli-dff039092d180fffa89e7d88f7a4b7bc24dfc80f.zip |
Merge pull request #1616 from dimtion/fix-api-redirect
API postLink: change relative path to absolute path
-rw-r--r-- | application/api/controllers/Links.php | 2 | ||||
-rw-r--r-- | tests/api/controllers/links/PostLinkTest.php | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/application/api/controllers/Links.php b/application/api/controllers/Links.php index 73a1b84e..6bf529e4 100644 --- a/application/api/controllers/Links.php +++ b/application/api/controllers/Links.php | |||
@@ -131,7 +131,7 @@ class Links extends ApiController | |||
131 | 131 | ||
132 | $this->bookmarkService->add($bookmark); | 132 | $this->bookmarkService->add($bookmark); |
133 | $out = ApiUtils::formatLink($bookmark, index_url($this->ci['environment'])); | 133 | $out = ApiUtils::formatLink($bookmark, index_url($this->ci['environment'])); |
134 | $redirect = $this->ci->router->relativePathFor('getLink', ['id' => $bookmark->getId()]); | 134 | $redirect = $this->ci->router->pathFor('getLink', ['id' => $bookmark->getId()]); |
135 | return $response->withAddedHeader('Location', $redirect) | 135 | return $response->withAddedHeader('Location', $redirect) |
136 | ->withJson($out, 201, $this->jsonStyle); | 136 | ->withJson($out, 201, $this->jsonStyle); |
137 | } | 137 | } |
diff --git a/tests/api/controllers/links/PostLinkTest.php b/tests/api/controllers/links/PostLinkTest.php index 7ff92f5c..e12f803b 100644 --- a/tests/api/controllers/links/PostLinkTest.php +++ b/tests/api/controllers/links/PostLinkTest.php | |||
@@ -92,8 +92,8 @@ class PostLinkTest extends TestCase | |||
92 | 92 | ||
93 | $mock = $this->createMock(Router::class); | 93 | $mock = $this->createMock(Router::class); |
94 | $mock->expects($this->any()) | 94 | $mock->expects($this->any()) |
95 | ->method('relativePathFor') | 95 | ->method('pathFor') |
96 | ->willReturn('api/v1/bookmarks/1'); | 96 | ->willReturn('/api/v1/bookmarks/1'); |
97 | 97 | ||
98 | // affect @property-read... seems to work | 98 | // affect @property-read... seems to work |
99 | $this->controller->getCi()->router = $mock; | 99 | $this->controller->getCi()->router = $mock; |
@@ -128,7 +128,7 @@ class PostLinkTest extends TestCase | |||
128 | 128 | ||
129 | $response = $this->controller->postLink($request, new Response()); | 129 | $response = $this->controller->postLink($request, new Response()); |
130 | $this->assertEquals(201, $response->getStatusCode()); | 130 | $this->assertEquals(201, $response->getStatusCode()); |
131 | $this->assertEquals('api/v1/bookmarks/1', $response->getHeader('Location')[0]); | 131 | $this->assertEquals('/api/v1/bookmarks/1', $response->getHeader('Location')[0]); |
132 | $data = json_decode((string) $response->getBody(), true); | 132 | $data = json_decode((string) $response->getBody(), true); |
133 | $this->assertEquals(self::NB_FIELDS_LINK, count($data)); | 133 | $this->assertEquals(self::NB_FIELDS_LINK, count($data)); |
134 | $this->assertEquals(43, $data['id']); | 134 | $this->assertEquals(43, $data['id']); |
@@ -175,7 +175,7 @@ class PostLinkTest extends TestCase | |||
175 | $response = $this->controller->postLink($request, new Response()); | 175 | $response = $this->controller->postLink($request, new Response()); |
176 | 176 | ||
177 | $this->assertEquals(201, $response->getStatusCode()); | 177 | $this->assertEquals(201, $response->getStatusCode()); |
178 | $this->assertEquals('api/v1/bookmarks/1', $response->getHeader('Location')[0]); | 178 | $this->assertEquals('/api/v1/bookmarks/1', $response->getHeader('Location')[0]); |
179 | $data = json_decode((string) $response->getBody(), true); | 179 | $data = json_decode((string) $response->getBody(), true); |
180 | $this->assertEquals(self::NB_FIELDS_LINK, count($data)); | 180 | $this->assertEquals(self::NB_FIELDS_LINK, count($data)); |
181 | $this->assertEquals(43, $data['id']); | 181 | $this->assertEquals(43, $data['id']); |