mirror of
https://github.com/lucaspalomodevelop/varkeeper.git
synced 2026-03-13 07:39:37 +00:00
124 lines
4.0 KiB
JavaScript
124 lines
4.0 KiB
JavaScript
|
|
let chai = require("chai");
|
|
let assert = chai.assert;
|
|
let expect = chai.expect;
|
|
const assertArrays = require('chai-arrays');
|
|
chai.use(assertArrays);
|
|
let varkeeper = require("../src/index.js");
|
|
|
|
describe('varkeeper', () => {
|
|
describe('setprop', () => {
|
|
it('will set a prop', () => {
|
|
varkeeper.setprop('test', 'value');
|
|
//let a = new varkeeper.Prop('test')
|
|
assert.equal(varkeeper.getprop("test"), 'value');
|
|
});
|
|
it('will set a prop as array', () => {
|
|
varkeeper.setprop('array', []);
|
|
expect(varkeeper.getprop('array')).to.be.an('array');
|
|
});
|
|
it('will set a prop as array with funtion return', () => {
|
|
varkeeper.setprop('array', () => {
|
|
return [];
|
|
}
|
|
);
|
|
expect(varkeeper.getprop('array')).to.be.an('array');
|
|
});
|
|
it('will slice a array-prop', () => {
|
|
varkeeper.setprop('array', [1, 2, 3, 4]);
|
|
let x = varkeeper.getprop('array');
|
|
let y = x.slice(0, 2);
|
|
expect(y).to.be.eql([1, 2]);
|
|
});
|
|
|
|
});
|
|
describe('getprop', () => {
|
|
it('will get prop from first test', () => {
|
|
assert.equal(varkeeper.getprop('test'), 'value');
|
|
});
|
|
it('will get not init prop', () => {
|
|
assert.equal(varkeeper.getprop('test1'), undefined);
|
|
});
|
|
});
|
|
|
|
describe('deleteprop', () => {
|
|
it('will detelte prop', () => {
|
|
varkeeper.setprop('test', 'value');
|
|
varkeeper.deleteprop('test');
|
|
assert.equal(varkeeper.getprop('test'), undefined);
|
|
});
|
|
});
|
|
describe('onchange', () => {
|
|
it('will call funtion by change prop value', () => {
|
|
let a = false;
|
|
varkeeper.on('change', 'test', () => { a = true });
|
|
varkeeper.setprop('test', 'value');
|
|
varkeeper.setprop('test', 'value2');
|
|
assert.equal(a, true);
|
|
});
|
|
});
|
|
|
|
describe('varkeeper porp class', () => {
|
|
it(" will setprop an prop of same value must be the same #1", () => {
|
|
varkeeper.setprop('test', 'value')
|
|
let x = new varkeeper.Prop('test');
|
|
assert.equal(x.get(), varkeeper.getprop('test'));
|
|
})
|
|
|
|
it(" will setprop an prop of same value must be the same #2", () => {
|
|
let x = new varkeeper.Prop('test', 'value');
|
|
assert.equal(x.get(), varkeeper.getprop('test'));
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
describe('varkeeper porp class on set', () => {
|
|
it(" on set eq value", () => {
|
|
let result = false
|
|
varkeeper.on('set', 'setprop', (value) => {
|
|
result = true;
|
|
});
|
|
let x = new varkeeper.Prop("setprop", "firstvalue");
|
|
x.set("firstvalue");
|
|
assert.equal(result, true);
|
|
})
|
|
|
|
it(" on set not eq value", () => {
|
|
let result = false
|
|
varkeeper.on('set', 'setprop', (value) => {
|
|
result = true;
|
|
});
|
|
let x = new varkeeper.Prop("setprop", "firstvalue");
|
|
x.set("secoundvalue");
|
|
assert.equal(result, true);
|
|
})
|
|
|
|
})
|
|
|
|
|
|
describe('varkeeper porp class on change', () => {
|
|
it(" on set eq value", () => {
|
|
let result = true;
|
|
varkeeper.on('change', 'changeprop', (value) => {
|
|
result = false;
|
|
});
|
|
let x = new varkeeper.Prop("changeprop", "firstvalue");
|
|
x.set("firstvalue");
|
|
assert.equal(result, true);
|
|
})
|
|
|
|
it(" on set not eq value", () => {
|
|
let result = false
|
|
let x = new varkeeper.Prop("changeprop", "firstvalue");
|
|
varkeeper.on('change', 'changeprop', (value) => {
|
|
result = true;
|
|
});
|
|
x.set("secoundvalue");
|
|
assert.equal(result, true);
|
|
})
|
|
|
|
})
|
|
|
|
}); |