mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-19 08:31:43 +03:00
47e00900cc
no issue - change out should.equal for // jshint ignore:line - ensure should is the first require in every test, and ALWAYS require - make sinon the second require, and sandbox the last thing - ALWAYS use sandbox, futureproofs tests against contributors who don't know it - change require formatting
133 lines
4.1 KiB
JavaScript
133 lines
4.1 KiB
JavaScript
var should = require('should'), // jshint ignore:line
|
|
getUrl = require('../../../server/data/meta/url');
|
|
|
|
describe('getUrl', function () {
|
|
it('should return url for a post', function () {
|
|
var url = getUrl({
|
|
html: '<p>Welcome to my post.</p>',
|
|
markdown: 'Welcome to my post.',
|
|
title: 'Welcome Post',
|
|
slug: 'welcome-post',
|
|
url: '/post/welcome-post/'
|
|
});
|
|
url.should.equal('/post/welcome-post/');
|
|
});
|
|
|
|
it('should return absolute url for a post', function () {
|
|
var url = getUrl({
|
|
html: '<p>Welcome to my post.</p>',
|
|
markdown: 'Welcome to my post.',
|
|
title: 'Welcome Post',
|
|
slug: 'welcome-post',
|
|
url: '/post/welcome-post/'
|
|
}, true);
|
|
url.should.equal('http://127.0.0.1:2369/post/welcome-post/');
|
|
});
|
|
|
|
it('should return url for a post and remove /amp/ in url', function () {
|
|
var url = getUrl({
|
|
relativeUrl: '/welcome-post/amp/',
|
|
post: {
|
|
html: '<p>Welcome to my post.</p>',
|
|
title: 'Welcome Post',
|
|
slug: 'welcome-post',
|
|
url: '/welcome-post/amp/'
|
|
}
|
|
});
|
|
url.should.equal('/welcome-post/');
|
|
});
|
|
|
|
it('should return absolute url for a post and remove /amp/ in url', function () {
|
|
var url = getUrl({
|
|
relativeUrl: '/welcome-post/amp/',
|
|
post: {
|
|
html: '<p>Welcome to my post.</p>',
|
|
title: 'Welcome Post',
|
|
slug: 'welcome-post',
|
|
url: '/welcome-post/amp/'
|
|
}
|
|
}, true);
|
|
url.should.equal('http://127.0.0.1:2369/welcome-post/');
|
|
});
|
|
|
|
it('should return url for a tag', function () {
|
|
var url = getUrl({
|
|
name: 'Great',
|
|
slug: 'great',
|
|
description: 'My great tag',
|
|
parent: null
|
|
});
|
|
url.should.equal('/tag/great/');
|
|
});
|
|
|
|
it('should return secure absolute url for a tag', function () {
|
|
var url = getUrl({
|
|
name: 'Great',
|
|
slug: 'great',
|
|
description: 'My great tag',
|
|
parent: null,
|
|
secure: true
|
|
}, true);
|
|
url.should.equal('https://127.0.0.1:2369/tag/great/');
|
|
});
|
|
|
|
it('should return url for a author', function () {
|
|
var url = getUrl({
|
|
name: 'Author Name',
|
|
bio: 'I am fun bio!',
|
|
website: 'http://myoksite.com',
|
|
status: 'active',
|
|
location: 'London',
|
|
slug: 'author-name'
|
|
});
|
|
url.should.equal('/author/author-name/');
|
|
});
|
|
|
|
it('should return secure absolute url for a author', function () {
|
|
var url = getUrl({
|
|
name: 'Author Name',
|
|
bio: 'I am fun bio!',
|
|
website: 'http://myoksite.com',
|
|
status: 'active',
|
|
location: 'London',
|
|
slug: 'author-name',
|
|
secure: true
|
|
}, true);
|
|
url.should.equal('https://127.0.0.1:2369/author/author-name/');
|
|
});
|
|
|
|
it('should return url for a nav', function () {
|
|
var url = getUrl({
|
|
label: 'About Me',
|
|
url: '/about-me/',
|
|
slug: 'about-me',
|
|
current: true
|
|
});
|
|
url.should.equal('/about-me/');
|
|
});
|
|
|
|
it('should return absolute url for a nav', function () {
|
|
var url = getUrl({
|
|
label: 'About Me',
|
|
url: '/about-me/',
|
|
slug: 'about-me',
|
|
current: true
|
|
}, true);
|
|
url.should.equal('http://127.0.0.1:2369/about-me/');
|
|
});
|
|
|
|
it('should return url for a context object with relative url', function () {
|
|
var url = getUrl({
|
|
relativeUrl: '/my/relative/url/'
|
|
});
|
|
url.should.equal('/my/relative/url/');
|
|
});
|
|
|
|
it('should return url for a context object with relative url and remove /amp/ in url', function () {
|
|
var url = getUrl({
|
|
relativeUrl: '/my/relative/url/amp/'
|
|
});
|
|
url.should.equal('/my/relative/url/');
|
|
});
|
|
});
|