first commit
This commit is contained in:
82
mixitup-3.3.1/tests/unit/mixer-toggle-on-off.js
Normal file
82
mixitup-3.3.1/tests/unit/mixer-toggle-on-off.js
Normal file
@@ -0,0 +1,82 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
require('jsdom-global')();
|
||||
|
||||
const chai = require('chai');
|
||||
const dom = require('../mock/dom');
|
||||
const mixitup = require('../../dist/mixitup.js');
|
||||
|
||||
chai.use(require('chai-shallow-deep-equal'));
|
||||
chai.use(require('chai-as-promised'));
|
||||
|
||||
describe('mixitup.Mixer', () => {
|
||||
describe('#toggleOn()', () => {
|
||||
const container = dom.getContainer();
|
||||
const mixer = mixitup(container);
|
||||
|
||||
it('should activate an initial toggle', () => {
|
||||
const matching = Array.prototype.slice.call(container.querySelectorAll('.category-a'));
|
||||
|
||||
return mixer.toggleOn('.category-a')
|
||||
.then(state => {
|
||||
chai.assert.equal(state.totalShow, matching.length);
|
||||
chai.assert.deepEqual(state.show, matching);
|
||||
chai.assert.deepEqual(state.matching, matching);
|
||||
});
|
||||
});
|
||||
|
||||
it('should activate a further toggle', () => {
|
||||
const matching = Array.prototype.slice.call(container.querySelectorAll('.category-a, .category-c'));
|
||||
|
||||
return mixer.toggleOn('.category-c')
|
||||
.then(state => {
|
||||
chai.assert.equal(state.totalShow, matching.length);
|
||||
chai.assert.deepEqual(state.show, matching);
|
||||
chai.assert.deepEqual(state.matching, matching);
|
||||
});
|
||||
});
|
||||
|
||||
it('should activate a non-existant toggle with no effect', () => {
|
||||
const matching = Array.prototype.slice.call(container.querySelectorAll('.category-a, .category-c'));
|
||||
|
||||
return mixer.toggleOn('.category-z')
|
||||
.then(state => {
|
||||
chai.assert.equal(state.totalShow, matching.length);
|
||||
chai.assert.deepEqual(state.show, matching);
|
||||
chai.assert.deepEqual(state.matching, matching);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('#toggleOff()', () => {
|
||||
const container = dom.getContainer();
|
||||
const mixer = mixitup(container, {
|
||||
load: {
|
||||
filter: '.category-a, .category-b, .category-c'
|
||||
}
|
||||
});
|
||||
|
||||
it('should deactivate a toggle', () => {
|
||||
const matching = Array.prototype.slice.call(container.querySelectorAll('.category-a, .category-b'));
|
||||
|
||||
return mixer.toggleOff('.category-c')
|
||||
.then(state => {
|
||||
chai.assert.equal(state.totalShow, matching.length);
|
||||
chai.assert.deepEqual(state.show, matching);
|
||||
chai.assert.deepEqual(state.matching, matching);
|
||||
});
|
||||
});
|
||||
|
||||
it('should deactivate a non existent toggle with no effect', () => {
|
||||
const matching = Array.prototype.slice.call(container.querySelectorAll('.category-a, .category-b'));
|
||||
|
||||
return mixer.toggleOff('.category-z')
|
||||
.then(state => {
|
||||
chai.assert.equal(state.totalShow, matching.length);
|
||||
chai.assert.deepEqual(state.show, matching);
|
||||
chai.assert.deepEqual(state.matching, matching);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user