forked from nodeSolidServer/node-solid-server
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaccount-template-test.js
More file actions
59 lines (50 loc) · 2.12 KB
/
account-template-test.js
File metadata and controls
59 lines (50 loc) · 2.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
'use strict'
const chai = require('chai')
const expect = chai.expect
const sinonChai = require('sinon-chai')
chai.use(sinonChai)
chai.should()
const AccountTemplate = require('../../lib/models/account-template')
const UserAccount = require('../../lib/models/user-account')
describe('AccountTemplate', () => {
describe('isTemplate()', () => {
let template = new AccountTemplate()
it('should recognize rdf files as templates', () => {
expect(template.isTemplate('./file.ttl')).to.be.true
expect(template.isTemplate('./file.rdf')).to.be.true
expect(template.isTemplate('./file.html')).to.be.true
expect(template.isTemplate('./file.jsonld')).to.be.true
})
it('should recognize files with template extensions as templates', () => {
expect(template.isTemplate('./.acl')).to.be.true
expect(template.isTemplate('./.meta')).to.be.true
expect(template.isTemplate('./file.json')).to.be.true
expect(template.isTemplate('./file.acl')).to.be.true
expect(template.isTemplate('./file.meta')).to.be.true
expect(template.isTemplate('./file.hbs')).to.be.true
expect(template.isTemplate('./file.handlebars')).to.be.true
})
it('should recognize reserved files with no extensions as templates', () => {
expect(template.isTemplate('./card')).to.be.true
})
it('should recognize arbitrary binary files as non-templates', () => {
expect(template.isTemplate('./favicon.ico')).to.be.false
expect(template.isTemplate('./file')).to.be.false
})
})
describe('templateSubstitutionsFor()', () => {
it('should init', () => {
let userOptions = {
username: 'alice',
webId: 'https://alice.example.com/profile/card#me',
name: 'Alice Q.',
email: 'alice@example.com'
}
let userAccount = UserAccount.from(userOptions)
let substitutions = AccountTemplate.templateSubstitutionsFor(userAccount)
expect(substitutions.name).to.equal('Alice Q.')
expect(substitutions.email).to.equal('alice@example.com')
expect(substitutions.webId).to.equal('https://alice.example.com/profile/card#me')
})
})
})