From 4368aa194ac33f66cf739833e4c19a2876880c16 Mon Sep 17 00:00:00 2001 From: Nazar Gargol Date: Sun, 30 Sep 2018 21:48:31 +0200 Subject: [PATCH] Added coverage for absolute urls being generated on post's included tags (#9924) no-issue --- .../functional/routes/api/public_api_spec.js | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/core/test/functional/routes/api/public_api_spec.js b/core/test/functional/routes/api/public_api_spec.js index fe77afe352..f26e174e4e 100644 --- a/core/test/functional/routes/api/public_api_spec.js +++ b/core/test/functional/routes/api/public_api_spec.js @@ -88,6 +88,33 @@ describe('Public API', function () { }); }); + it('browse posts: request to include tags with absolute_urls', function (done) { + request.get(testUtils.API.getApiQuery('posts/?client_id=ghost-admin&client_secret=not_available&absolute_urls=true&include=tags')) + .set('Origin', testUtils.API.getURL()) + .expect('Content-Type', /json/) + .expect('Cache-Control', testUtils.cacheRules.private) + .expect(200) + .end(function (err, res) { + if (err) { + return done(err); + } + + should.exist(res.body.posts); + + // kitchen sink + res.body.posts[9].slug.should.eql(testUtils.DataGenerator.Content.posts[1].slug); + + should.exist(res.body.posts[9].tags); + should.exist(res.body.posts[9].tags[0].url); + + const urlParts = url.parse(res.body.posts[9].tags[0].url); + should.exist(urlParts.protocol); + should.exist(urlParts.host); + + done(); + }); + }); + it('browse posts from different origin', function (done) { request.get(testUtils.API.getApiQuery('posts/?client_id=ghost-test&client_secret=not_available')) .set('Origin', 'https://example.com')