mirror of https://github.com/artf/grapesjs.git
nocodeframeworkdrag-and-dropsite-buildersite-generatortemplate-builderui-builderweb-builderweb-builder-frameworkwebsite-builderno-codepage-builder
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.1 KiB
71 lines
2.1 KiB
var AssetImageView = require('asset_manager/view/AssetImageView');
|
|
var AssetImage = require('asset_manager/model/AssetImage');
|
|
var Assets = require('asset_manager/model/Assets');
|
|
|
|
module.exports = {
|
|
run() {
|
|
let obj;
|
|
|
|
describe('AssetImageView', () => {
|
|
beforeEach(() => {
|
|
var coll = new Assets();
|
|
var model = coll.add({ type: 'image', src: '/test' });
|
|
obj = new AssetImageView({
|
|
collection: new Assets(),
|
|
config: {},
|
|
model
|
|
});
|
|
document.body.innerHTML = '<div id="fixtures"></div>';
|
|
document.body.querySelector('#fixtures').appendChild(obj.render().el);
|
|
});
|
|
|
|
afterEach(() => {
|
|
obj = null;
|
|
document.body.innerHTML = '';
|
|
});
|
|
|
|
test('Object exists', () => {
|
|
expect(AssetImageView).toBeTruthy();
|
|
});
|
|
|
|
describe('Asset should be rendered correctly', () => {
|
|
test('Has preview box', () => {
|
|
var $asset = obj.$el;
|
|
expect($asset.find('.preview').length).toEqual(1);
|
|
});
|
|
|
|
test('Has meta box', () => {
|
|
var $asset = obj.$el;
|
|
expect($asset.find('.meta').length).toEqual(1);
|
|
});
|
|
|
|
test('Has close button', () => {
|
|
var $asset = obj.$el;
|
|
expect($asset.find('[data-toggle=asset-remove]').length).toEqual(1);
|
|
});
|
|
});
|
|
|
|
test('Could be selected', () => {
|
|
var spy = jest.spyOn(obj, 'updateTarget');
|
|
obj.$el.trigger('click');
|
|
expect(obj.$el.attr('class')).toContain('highlight');
|
|
expect(spy).toHaveBeenCalled();
|
|
});
|
|
|
|
test('Could be chosen', () => {
|
|
sinon.stub(obj, 'updateTarget');
|
|
var spy = jest.spyOn(obj, 'updateTarget');
|
|
obj.$el.trigger('dblclick');
|
|
expect(spy).toHaveBeenCalled();
|
|
//obj.updateTarget.calledOnce.should.equal(true);
|
|
});
|
|
|
|
test('Could be removed', () => {
|
|
var spy = sinon.spy();
|
|
obj.model.on('remove', spy);
|
|
obj.onRemove({ stopImmediatePropagation() {} });
|
|
expect(spy.called).toEqual(true);
|
|
});
|
|
});
|
|
}
|
|
};
|
|
|