diff --git a/test/themes/helpers/relative.spec.js b/test/themes/helpers/relative.spec.js
index 7e4fa70..814ea82 100644
--- a/test/themes/helpers/relative.spec.js
+++ b/test/themes/helpers/relative.spec.js
@@ -1,59 +1,85 @@
-const date = require('../../../src/website/theme-base/helpers/relative')
+const relative = require('../../../src/website/theme-base/helpers/relative')
const handlebars = require('handlebars')
const should = require('should/as-function')
describe('Handlebars helpers: relative', () => {
- handlebars.registerHelper('relative', date)
-
- it('returns a path in the same folder', () => {
- const template = handlebars.compile('')
- const res = template({
- album: {
- path: 'index.html'
- }
+ handlebars.registerHelper('relative', relative)
+
+ describe('theme assets', () => {
+ it('returns a path in the same folder', () => {
+ const template = handlebars.compile('')
+ const res = template({
+ album: {
+ path: 'index.html'
+ }
+ })
+ should(res).eql('')
})
- should(res).eql('')
- })
- it('returns a relative path for albums in nested folders', () => {
- const template = handlebars.compile('')
- const res = template({
- album: {
- path: 'albums/holidays.html'
- }
+ it('returns a relative path for albums in nested folders', () => {
+ const template = handlebars.compile('')
+ const res = template({
+ album: {
+ path: 'albums/holidays.html'
+ }
+ })
+ should(res).eql('')
})
- should(res).eql('')
})
- it('does not do anything if the path is an absolute URL', () => {
- // This can happen when using --link-prefix
- const url = 'http://example.com/photo.jpg'
- const template = handlebars.compile(``)
- const res = template({})
- should(res).eql(``)
- })
+ describe('images and videos', () => {
+ it('returns a path from the root album', () => {
+ const template = handlebars.compile('')
+ const res = template({
+ album: {
+ path: 'index.html'
+ }
+ })
+ should(res).eql('')
+ })
- // TODO: this should not be needed anymore because all URLs are already escaped
- it('escapes single quotes so they can be used in CSS background-image', () => {
- const template = handlebars.compile("background-image('{{relative url}}')")
- const res = template({
- url: "l'histoire.jpg",
- album: {
- path: 'index.html'
- }
+ it('returns a path from a nested album', () => {
+ const template = handlebars.compile('')
+ const res = template({
+ album: {
+ path: 'albums/holidays.html'
+ }
+ })
+ should(res).eql('')
+ })
+
+ it('does not do anything if the path is an absolute URL', () => {
+ // This can happen when using --link-prefix
+ const url = 'http://example.com/photo.jpg'
+ const template = handlebars.compile(``)
+ const res = template({})
+ should(res).eql(``)
})
- should(res).eql("background-image('l%27histoire.jpg')")
})
- // TODO: this should not be needed anymore because all URLs are already escaped
- it('escapes double quotes so they can be used in tags', () => {
- const template = handlebars.compile('')
- const res = template({
- url: 'l"histoire.jpg',
- album: {
- path: 'index.html'
- }
+ describe('escaping', () => {
+ // TODO: this should not be needed anymore because all URLs are already escaped
+ it('escapes single quotes so they can be used in CSS background-image', () => {
+ const template = handlebars.compile("background-image('{{relative url}}')")
+ const res = template({
+ url: "l'histoire.jpg",
+ album: {
+ path: 'index.html'
+ }
+ })
+ should(res).eql("background-image('l%27histoire.jpg')")
+ })
+
+ // TODO: this should not be needed anymore because all URLs are already escaped
+ it('escapes double quotes so they can be used in tags', () => {
+ const template = handlebars.compile('')
+ const res = template({
+ url: 'l"histoire.jpg',
+ album: {
+ path: 'index.html'
+ }
+ })
+ should(res).eql('')
})
- should(res).eql('')
})
})