Browse Source

Fix sectors tests

no-jquery
Artur Arseniev 9 years ago
parent
commit
eed4942067
  1. 6
      src/utils/extender.js
  2. 23
      test/specs/style_manager/index.js
  3. 34
      test/specs/style_manager/view/SectorView.js
  4. 17
      test/specs/style_manager/view/SectorsView.js

6
src/utils/extender.js

@ -223,15 +223,15 @@ module.exports = ({$, Backbone}) => {
} }
fn.click = function(h) { fn.click = function(h) {
return this.on('click', h); return h ? this.on('click', h) : this.trigger('click');
} }
fn.change = function(h) { fn.change = function(h) {
return this.on('change', h); return h ? this.on('change', h) : this.trigger('change');
} }
fn.keydown = function(h) { fn.keydown = function(h) {
return this.on('keydown', h); return h ? this.on('keydown', h) : this.trigger('keydown');
} }
fn.delegate = function(selector, events, data, handler) { fn.delegate = function(selector, events, data, handler) {

23
test/specs/style_manager/index.js

@ -176,16 +176,19 @@ describe('StyleManager', () => {
}); });
Models.run(); Models.run();
SectorView.run();
SectorsView.run(); describe.only('Views', () => {
PropertyView.run(); SectorView.run();
PropertySelectView.run(); SectorsView.run();
PropertyRadioView.run(); PropertyView.run();
PropertyIntegerView.run(); PropertySelectView.run();
PropertyColorView.run(); PropertyRadioView.run();
PropertyCompositeView.run(); PropertyIntegerView.run();
PropertyStackView.run(); PropertyColorView.run();
LayerView.run(); PropertyCompositeView.run();
PropertyStackView.run();
LayerView.run();
});
}); });
}); });

34
test/specs/style_manager/view/SectorView.js

@ -6,33 +6,24 @@ module.exports = {
describe('SectorView', () => { describe('SectorView', () => {
var $fixtures; var fixtures;
var $fixture;
var model; var model;
var view; var view;
before(() => {
$fixtures = $("#fixtures");
$fixture = $('<div class="sector-fixture"></div>');
});
beforeEach(() => { beforeEach(() => {
model = new Sector(); model = new Sector();
view = new SectorView({ view = new SectorView({
model model
}); });
$fixture.empty().appendTo($fixtures); document.body.innerHTML = '<div id="fixtures"></div>';
$fixture.html(view.render().el); fixtures = document.body.querySelector('#fixtures');
fixtures.appendChild(view.render().el);
}); });
afterEach(() => { afterEach(() => {
view.remove(); view.remove();
}); });
after(() => {
$fixture.remove();
});
it('Rendered correctly', () => { it('Rendered correctly', () => {
var sector = view.el; var sector = view.el;
expect(sector.querySelector('.title')).toExist(); expect(sector.querySelector('.title')).toExist();
@ -43,7 +34,7 @@ module.exports = {
it('No properties', () => { it('No properties', () => {
var props = view.el.querySelector('.properties'); var props = view.el.querySelector('.properties');
expect(props.innerHTML).toEqual('<div class="clear"></div>'); expect(props.innerHTML).toEqual('');
}); });
it('Update on open', () => { it('Update on open', () => {
@ -75,15 +66,14 @@ module.exports = {
view = new SectorView({ view = new SectorView({
model model
}); });
$fixture.empty().appendTo($fixtures); //$fixture.empty().appendTo($fixtures);
$fixture.html(view.render().el); //$fixture.html(view.render().el);
}); document.body.innerHTML = '<div id="fixtures"></div>';
fixtures = document.body.querySelector('#fixtures');
afterEach(() => { fixtures.appendChild(view.render().el);
view.remove();
}); });
it('Rendered correctly2', () => { it('Rendered correctly', () => {
var sector = view.el; var sector = view.el;
var props = sector.querySelector('.properties'); var props = sector.querySelector('.properties');
expect(sector.querySelector('.title').innerHTML).toContain('TestName'); expect(sector.querySelector('.title').innerHTML).toContain('TestName');
@ -94,7 +84,7 @@ module.exports = {
it('Has properties', () => { it('Has properties', () => {
var props = view.el.querySelector('.properties'); var props = view.el.querySelector('.properties');
expect(props.children.length).toEqual(4); // Last one is 'clear' element expect(props.children.length).toEqual(3);
}); });
}); });

17
test/specs/style_manager/view/SectorsView.js

@ -6,33 +6,24 @@ module.exports = {
describe('SectorsView', () => { describe('SectorsView', () => {
var $fixtures; var fixtures;
var $fixture;
var model; var model;
var view; var view;
before(() => {
$fixtures = $("#fixtures");
$fixture = $('<div class="sectors-fixture"></div>');
});
beforeEach(() => { beforeEach(() => {
model = new Sectors([]); model = new Sectors([]);
view = new SectorsView({ view = new SectorsView({
collection: model collection: model
}); });
$fixture.empty().appendTo($fixtures); document.body.innerHTML = '<div id="fixtures"></div>';
$fixture.html(view.render().el); fixtures = document.body.querySelector('#fixtures');
fixtures.appendChild(view.render().el);
}); });
afterEach(() => { afterEach(() => {
view.collection.reset(); view.collection.reset();
}); });
after(() => {
$fixture.remove();
});
it("Collection is empty", () => { it("Collection is empty", () => {
expect(view.el.innerHTML).toEqual(''); expect(view.el.innerHTML).toEqual('');
}); });

Loading…
Cancel
Save