|
|
|
@ -4,32 +4,25 @@ var Assets = require('asset_manager/model/Assets'); |
|
|
|
|
|
|
|
module.exports = { |
|
|
|
run() { |
|
|
|
let obj; |
|
|
|
|
|
|
|
describe('AssetImageView', () => { |
|
|
|
|
|
|
|
before(function () { |
|
|
|
this.$fixtures = $("#fixtures"); |
|
|
|
this.$fixture = $('<div class="asset-fixture"></div>'); |
|
|
|
}); |
|
|
|
|
|
|
|
beforeEach(function () { |
|
|
|
var coll = new Assets(); |
|
|
|
var model = coll.add({ type:'image', src: '/test' }); |
|
|
|
this.view = new AssetImageView({ |
|
|
|
obj = new AssetImageView({ |
|
|
|
collection: new Assets(), |
|
|
|
config : {}, |
|
|
|
model |
|
|
|
}); |
|
|
|
this.$fixture.empty().appendTo(this.$fixtures); |
|
|
|
this.$fixture.html(this.view.render().el); |
|
|
|
document.body.innerHTML = '<div id="fixtures"></div>'; |
|
|
|
document.body.querySelector('#fixtures').appendChild(obj.render().el); |
|
|
|
}); |
|
|
|
|
|
|
|
afterEach(function () { |
|
|
|
this.view = null; |
|
|
|
}); |
|
|
|
|
|
|
|
after(function () { |
|
|
|
this.$fixture.empty(); |
|
|
|
obj = null; |
|
|
|
document.body.innerHTML = ''; |
|
|
|
}); |
|
|
|
|
|
|
|
it('Object exists', () => { |
|
|
|
@ -39,41 +32,41 @@ module.exports = { |
|
|
|
describe('Asset should be rendered correctly', () => { |
|
|
|
|
|
|
|
it('Has preview box', function() { |
|
|
|
var $asset = this.view.$el; |
|
|
|
var $asset = obj.$el; |
|
|
|
expect($asset.find('.preview').length).toEqual(1); |
|
|
|
}); |
|
|
|
|
|
|
|
it('Has meta box', function() { |
|
|
|
var $asset = this.view.$el; |
|
|
|
var $asset = obj.$el; |
|
|
|
expect($asset.find('.meta').length).toEqual(1); |
|
|
|
}); |
|
|
|
|
|
|
|
it('Has close button', function() { |
|
|
|
var $asset = this.view.$el; |
|
|
|
var $asset = obj.$el; |
|
|
|
expect($asset.find('[data-toggle=asset-remove]').length).toEqual(1); |
|
|
|
}); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
it('Could be selected', function() { |
|
|
|
var spy = expect.spyOn(this.view, 'updateTarget'); |
|
|
|
this.view.$el.trigger('click'); |
|
|
|
expect(this.view.$el.attr('class')).toInclude('highlight'); |
|
|
|
var spy = expect.spyOn(obj, 'updateTarget'); |
|
|
|
obj.onClick(); |
|
|
|
expect(obj.$el.attr('class')).toInclude('highlight'); |
|
|
|
expect(spy).toHaveBeenCalled(); |
|
|
|
}); |
|
|
|
|
|
|
|
it('Could be chosen', function() { |
|
|
|
sinon.stub(this.view, 'updateTarget'); |
|
|
|
var spy = expect.spyOn(this.view, 'updateTarget'); |
|
|
|
this.view.$el.trigger('dblclick'); |
|
|
|
sinon.stub(obj, 'updateTarget'); |
|
|
|
var spy = expect.spyOn(obj, 'updateTarget'); |
|
|
|
obj.onDblClick(); |
|
|
|
expect(spy).toHaveBeenCalled(); |
|
|
|
//this.view.updateTarget.calledOnce.should.equal(true);
|
|
|
|
//obj.updateTarget.calledOnce.should.equal(true);
|
|
|
|
}); |
|
|
|
|
|
|
|
it('Could be removed', function() { |
|
|
|
var spy = sinon.spy(); |
|
|
|
this.view.model.on("remove", spy); |
|
|
|
this.view.$el.find('[data-toggle=asset-remove]').trigger('click'); |
|
|
|
obj.model.on("remove", spy); |
|
|
|
obj.onRemove({stopPropagation() {}}); |
|
|
|
expect(spy.called).toEqual(true); |
|
|
|
}); |
|
|
|
|
|
|
|
|