2022-09-09 20:20:38 +02:00
|
|
|
import chai from 'chai'
|
|
|
|
import { Design } from '../src/index.mjs'
|
2022-08-25 11:47:54 +02:00
|
|
|
|
|
|
|
const expect = chai.expect
|
2019-02-16 09:27:38 +01:00
|
|
|
|
2022-09-09 20:20:38 +02:00
|
|
|
const arrays = ['measurements', 'optionalMeasurements', 'parts', 'plugins']
|
|
|
|
|
2022-08-27 09:27:07 +02:00
|
|
|
describe('Design', () => {
|
2022-09-09 20:20:38 +02:00
|
|
|
it('Design constructor should return pattern constructor', () => {
|
|
|
|
const Pattern = new Design()
|
|
|
|
expect(typeof Pattern).to.equal('function')
|
|
|
|
})
|
|
|
|
|
|
|
|
it('Design constructor should load the default config', () => {
|
|
|
|
const Pattern = new Design()
|
|
|
|
const config = Pattern.config
|
|
|
|
for (const key of arrays) {
|
|
|
|
expect(Array.isArray(config[key])).to.equal(true)
|
|
|
|
expect(config[key].length).to.equal(0)
|
|
|
|
}
|
|
|
|
expect(typeof config.options).to.equal('object')
|
|
|
|
expect(Object.keys(config.options).length).to.equal(0)
|
|
|
|
})
|
|
|
|
|
|
|
|
for (const key of arrays) {
|
|
|
|
it(`Design constructor should add ${key} to config`, () => {
|
|
|
|
const settings = {}
|
|
|
|
settings[key] = ['one', 'two']
|
|
|
|
const Pattern = new Design(settings)
|
|
|
|
expect(Pattern.config[key].length).to.equal(2)
|
|
|
|
expect(Pattern.config[key][0]).to.equal('one')
|
|
|
|
expect(Pattern.config[key][1]).to.equal('two')
|
|
|
|
})
|
|
|
|
}
|
|
|
|
it(`Design constructor should add options to config`, () => {
|
|
|
|
const settings = {
|
2022-08-27 09:27:07 +02:00
|
|
|
options: {
|
2022-09-09 20:20:38 +02:00
|
|
|
one: { pct: 50, min: 0, max: 100 },
|
|
|
|
two: { deg: 10, min: 5, max: 15 },
|
2022-08-27 09:27:07 +02:00
|
|
|
},
|
2022-09-09 20:20:38 +02:00
|
|
|
}
|
|
|
|
const Pattern = new Design(settings)
|
|
|
|
const o = Pattern.config.options
|
|
|
|
expect(Object.keys(o).length).to.equal(2)
|
|
|
|
expect(o.one.pct).to.equal(50)
|
|
|
|
expect(o.one.min).to.equal(0)
|
|
|
|
expect(o.one.max).to.equal(100)
|
|
|
|
expect(o.two.deg).to.equal(10)
|
|
|
|
expect(o.two.min).to.equal(5)
|
|
|
|
expect(o.two.max).to.equal(15)
|
|
|
|
})
|
2022-08-07 17:29:33 +02:00
|
|
|
})
|