mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-11-28 22:43:30 +03:00
af4bfb8862
- purely for cleanliness! - we use kebabcase by default - tests should be kebab-case-file_spec.js (one day we want this to be .test.js)
91 lines
2.8 KiB
JavaScript
91 lines
2.8 KiB
JavaScript
const should = require('should');
|
|
const sinon = require('sinon');
|
|
const getAuthorImage = require('../../../core/frontend/meta/author-image');
|
|
|
|
describe('getAuthorImage', function () {
|
|
afterEach(function () {
|
|
sinon.restore();
|
|
});
|
|
|
|
it('should return author image url if post and has url', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['post'],
|
|
post: {
|
|
primary_author: {
|
|
profile_image: '/content/images/2016/01/myimage.jpg'
|
|
}
|
|
}
|
|
}, false);
|
|
|
|
imageUrl.should.equal('/content/images/2016/01/myimage.jpg');
|
|
});
|
|
|
|
it('should return absolute author image url if post and has url', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['post'],
|
|
post: {
|
|
primary_author: {
|
|
profile_image: '/content/images/2016/01/myimage.jpg'
|
|
}
|
|
}
|
|
}, true);
|
|
imageUrl.should.not.equal('/content/images/2016/01/myimage.jpg');
|
|
imageUrl.should.match(/\/content\/images\/2016\/01\/myimage\.jpg$/);
|
|
});
|
|
|
|
it('should return author image url if AMP post and has url', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['amp', 'post'],
|
|
post: {
|
|
primary_author: {
|
|
profile_image: '/content/images/2016/01/myimage.jpg'
|
|
}
|
|
}
|
|
}, false);
|
|
imageUrl.should.equal('/content/images/2016/01/myimage.jpg');
|
|
});
|
|
|
|
it('should return absolute author image url if AMP post and has url', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['amp', 'post'],
|
|
post: {
|
|
primary_author: {
|
|
profile_image: '/content/images/2016/01/myimage.jpg'
|
|
}
|
|
}
|
|
}, true);
|
|
imageUrl.should.not.equal('/content/images/2016/01/myimage.jpg');
|
|
imageUrl.should.match(/\/content\/images\/2016\/01\/myimage\.jpg$/);
|
|
});
|
|
|
|
it('should return null if context does not contain author image url and is a post', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['post'],
|
|
post: {
|
|
primary_author: {
|
|
name: 'Test Author'
|
|
}
|
|
}
|
|
});
|
|
|
|
should(imageUrl).equal(null);
|
|
});
|
|
|
|
it('should return null if context does not contain author and is a post', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['post'],
|
|
post: {}
|
|
});
|
|
|
|
should(imageUrl).equal(null);
|
|
});
|
|
|
|
it('should return null if context is not a post', function () {
|
|
const imageUrl = getAuthorImage({
|
|
context: ['tag']
|
|
});
|
|
|
|
should(imageUrl).equal(null);
|
|
});
|
|
});
|