pudding
Version:
Generate test data with random embed values.
74 lines (65 loc) • 1.6 kB
JavaScript
/**
* assert case for pudding.
* Runs with mocha.
*/
const Pudding = require('../lib/pudding.js')
const assert = require('assert')
describe('pudding', () => {
it('Create a pudding', (done) => {
let pudding = new Pudding({
lang: 'en',
vars: {
foo: 'bar'
}
})
assert.ok(pudding)
assert.equal(pudding.lang, 'en')
pudding.setLang('ja')
assert.equal(pudding.lang, 'ja')
pudding.addVars({ baz: 'quz' })
assert.equal(pudding.vars.foo, 'bar')
assert.equal(pudding.vars.baz, 'quz')
done()
})
it('Create datasource.', (done) => {
let pudding = new Pudding()
let datasource = pudding.newDatasource(234)
assert.ok(datasource)
assert.equal(datasource.length, 234)
done()
})
it('Create evaluator.', (done) => {
let pudding = new Pudding()
let evaluator = pudding.newEvaluator()
assert.ok(evaluator)
done()
})
it('Define a context.', (done) => {
let pudding = new Pudding({
vars: {
foo: 'bar'
}
})
let context = pudding.newContext(20, { baz: 'quz' })
assert.equal(context.foo, 'bar')
assert.equal(context.baz, 'quz')
done()
})
it('Do explode.', (done) => {
let pudding = new Pudding({
vars: {
foo: 'bar',
moment: require('moment')
}
})
let data = pudding.explode({
name: '#{moment(new Date(birthday)).format("YYYY-MM-DD")}, #{star}です',
hoge: '#{i}'
}, 11)
assert.ok(data)
assert.equal(data.length, 11)
done()
})
})
/* global describe, before, it */