Initial commit
This commit is contained in:
+152
@@ -0,0 +1,152 @@
|
||||
var _ = require('underscore');
|
||||
var Backbone = require('backbone');
|
||||
var AnalysisDefinitionNodesCollection = require('builder/data/analysis-definition-nodes-collection');
|
||||
var AnalysisDefinitionsCollection = require('builder/data/analysis-definitions-collection');
|
||||
var ConfigModel = require('builder/data/config-model');
|
||||
var DeleteLayerConfirmationView = require('builder/components/modals/remove-layer/delete-layer-confirmation-view');
|
||||
var LayerDefinitionModel = require('builder/data/layer-definition-model');
|
||||
var LayerDefinitionsCollection = require('builder/data/layer-definitions-collection');
|
||||
var ModalsServiceModel = require('builder/components/modals/modals-service-model');
|
||||
var UserActions = require('builder/data/user-actions');
|
||||
var UserModel = require('builder/data/user-model');
|
||||
var VisDefinitionModel = require('builder/data/vis-definition-model');
|
||||
var WidgetDefinitionsCollection = require('builder/data/widget-definitions-collection');
|
||||
|
||||
describe('modals/delete-layer-confirmation-view', function () {
|
||||
var view;
|
||||
var modalModel;
|
||||
var userData;
|
||||
var configData;
|
||||
var configModel;
|
||||
var userModel;
|
||||
var analysisDefinitionNodesCollection;
|
||||
var layerModel;
|
||||
var layerDefinitionsCollection;
|
||||
var visDefinitionModel;
|
||||
var widgetDefinitionsCollection;
|
||||
var analysisDefinitionsCollection;
|
||||
var userActions;
|
||||
var modals;
|
||||
|
||||
modalModel = new Backbone.Model();
|
||||
|
||||
userData = {
|
||||
id: '8c253a9a-94d8-4042-883c-3aa81285e5e6',
|
||||
username: 'cdb'
|
||||
};
|
||||
|
||||
configData = {
|
||||
base_url: '/u/manolo',
|
||||
maps_api_template: 'http://{user}.localhost.lan:8181'
|
||||
};
|
||||
|
||||
configModel = new ConfigModel(configData);
|
||||
|
||||
userModel = new UserModel(userData, { configModel: configModel });
|
||||
|
||||
analysisDefinitionNodesCollection = new AnalysisDefinitionNodesCollection([], {
|
||||
configModel: configModel,
|
||||
userModel: userModel
|
||||
});
|
||||
|
||||
layerModel = new LayerDefinitionModel({
|
||||
id: 'map-123',
|
||||
kind: 'carto',
|
||||
options: {
|
||||
type: 'CartoDB',
|
||||
color: '#FABADA',
|
||||
table_name: 'foo_bar',
|
||||
name: 'foo',
|
||||
letter: 'a',
|
||||
source: 'map-123',
|
||||
table_name_alias: 'foo_foo_bar',
|
||||
query: 'SELECT * FROM foo',
|
||||
tile_style: 'asdasd',
|
||||
visible: true
|
||||
}
|
||||
}, {
|
||||
configModel: configModel,
|
||||
parse: true
|
||||
});
|
||||
|
||||
layerDefinitionsCollection = new LayerDefinitionsCollection([layerModel], {
|
||||
configModel: configModel,
|
||||
userModel: userModel,
|
||||
analysisDefinitionNodesCollection: analysisDefinitionNodesCollection,
|
||||
mapId: 'map-123',
|
||||
stateDefinitionModel: {}
|
||||
});
|
||||
|
||||
visDefinitionModel = new VisDefinitionModel({
|
||||
name: 'foo',
|
||||
privacy: 'LINK',
|
||||
updated_at: '2016-06-21T15:30:06+00:00',
|
||||
type: 'derived',
|
||||
tags: ['foo', 'bar'],
|
||||
permission: {}
|
||||
}, {
|
||||
configModel: configModel
|
||||
});
|
||||
|
||||
widgetDefinitionsCollection = new WidgetDefinitionsCollection([layerModel], {
|
||||
configModel: configModel,
|
||||
layerDefinitionsCollection: layerDefinitionsCollection,
|
||||
analysisDefinitionNodesCollection: analysisDefinitionNodesCollection,
|
||||
mapId: 'map-123'
|
||||
});
|
||||
|
||||
analysisDefinitionsCollection = new AnalysisDefinitionsCollection([layerModel], {
|
||||
configModel: configModel,
|
||||
vizId: 'viz-123',
|
||||
layerDefinitionsCollection: layerDefinitionsCollection,
|
||||
analysisDefinitionNodesCollection: analysisDefinitionNodesCollection
|
||||
});
|
||||
|
||||
userActions = new UserActions({
|
||||
userModel: userModel,
|
||||
analysisDefinitionNodesCollection: analysisDefinitionNodesCollection,
|
||||
analysisDefinitionsCollection: analysisDefinitionsCollection,
|
||||
layerDefinitionsCollection: layerDefinitionsCollection,
|
||||
widgetDefinitionsCollection: widgetDefinitionsCollection
|
||||
});
|
||||
|
||||
modals = new ModalsServiceModel();
|
||||
|
||||
function createViewFn (options) {
|
||||
var defaultOptions = {
|
||||
userActions: userActions,
|
||||
modals: modals,
|
||||
layerModel: layerModel,
|
||||
modalModel: modalModel,
|
||||
visDefinitionModel: visDefinitionModel,
|
||||
widgetDefinitionsCollection: widgetDefinitionsCollection
|
||||
};
|
||||
|
||||
return new DeleteLayerConfirmationView(_.extend(defaultOptions, options));
|
||||
}
|
||||
|
||||
describe('render', function () {
|
||||
it('should render properly', function () {
|
||||
view = createViewFn();
|
||||
view.render();
|
||||
|
||||
expect(view.$('h2')[0].textContent.trim()).toEqual('editor.layers.delete.title');
|
||||
expect(view.$('p')[0].textContent.trim()).toEqual('editor.layers.delete.desc');
|
||||
|
||||
expect(view.$('li').length).toEqual(3);
|
||||
expect(view.$('li')[0].textContent.trim()).toEqual('editor.layers.delete.link-to-export');
|
||||
|
||||
expect(view.$('button.js-cancel > span')[0].textContent.trim()).toEqual('editor.layers.delete.cancel');
|
||||
expect(view.$('button.js-confirm > span')[0].textContent.trim()).toEqual('editor.layers.delete.confirm');
|
||||
});
|
||||
|
||||
it('should show the name of the layer to be deleted', function () {
|
||||
spyOn(layerModel, 'getName').and.callThrough();
|
||||
|
||||
view = createViewFn();
|
||||
view.render();
|
||||
|
||||
expect(layerModel.getName).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user