Initial commit

This commit is contained in:
zhongjin
2020-06-15 10:58:47 +08:00
commit 4f1dfe7564
8590 changed files with 1516878 additions and 0 deletions
@@ -0,0 +1,42 @@
var Backbone = require('backbone');
var DatasetMetadataView = require('builder/components/modals/dataset-metadata/dataset-metadata-view');
describe('components/modals/dataset-metadata/dataset-metadata-view', function () {
beforeEach(function () {
this.view = new DatasetMetadataView({
modalModel: new Backbone.Model(),
configModel: new Backbone.Model(),
visDefinitionModel: new Backbone.Model(),
isLocked: false
});
});
it('._getMetadataName sanitizes input', function () {
this.view._visMetadataModel.set('name', "><script>alert('yep');</script>");
var name = this.view._getMetadataName();
expect(name).toEqual('&gt;');
});
it('._getMetadataDescription sanitizes input', function () {
this.view._visMetadataModel.set('description', "<img src='http://emojipedia-us.s3.amazonaws.com/cache/b8/b4/b8b4e86a110557e6b6d666c9cf6d6cc8.png' />");
var name = this.view._getMetadataDescription();
expect(name).toEqual('<img>');
});
it('._getMetadataTags sanitizes input', function () {
this.view._visMetadataModel.set('tags', [
"<img src='http://emojipedia-us.s3.amazonaws.com/cache/b8/b4/b8b4e86a110557e6b6d666c9cf6d6cc8.png' />",
"><script>alert('yep');</script>"
]);
var tags = this.view._getMetadataTags();
expect(tags.length).toBe(2);
expect(tags[0]).toEqual('<img>');
expect(tags[1]).toEqual('&gt;');
});
});
@@ -0,0 +1,43 @@
var Backbone = require('backbone');
var FormView = require('builder/components/modals/dataset-metadata/form/form-view');
describe('components/modals/dataset-metadata/form-view', function () {
beforeEach(function () {
this.view = new FormView({
visDefinitionModel: new Backbone.Model(),
visMetadataModel: new Backbone.Model(),
configModel: new Backbone.Model(),
isLocked: false
});
this.view.model = {};
});
it('._commitView should call _sanitizeName', function () {
spyOn(this.view, '_sanitizeName');
var name = 'something';
var view = {
model: {
changed: {name: name},
get: function () {
return name;
}
},
commit: function () {}
};
this.view._commitView(view);
expect(this.view._sanitizeName).toHaveBeenCalledWith(name);
});
it('._sanitizeName should sanitize input and set metadata model name', function () {
this.view._sanitizeName('<script>');
expect(this.view._visMetadataModel.get('name')).toEqual('');
this.view._sanitizeName('something');
expect(this.view._visMetadataModel.get('name')).toEqual('something');
this.view._sanitizeName(null);
expect(this.view._visMetadataModel.get('name')).toEqual('');
});
});