71 lines
2.0 KiB
JavaScript
71 lines
2.0 KiB
JavaScript
var _ = require('underscore');
|
|
var Backbone = require('backbone');
|
|
var PrivacyWarningView = require('builder/components/modals/privacy-warning/privacy-warning-view');
|
|
|
|
describe('components/modals/privacy-warning/privacy-warning-view', function () {
|
|
var view;
|
|
|
|
var createViewFn = function (viewOptions) {
|
|
var modals = new Backbone.Model();
|
|
|
|
var view = new PrivacyWarningView(
|
|
_.extend({
|
|
privacyType: 'PUBLIC',
|
|
modalModel: modals
|
|
}, viewOptions)
|
|
);
|
|
|
|
return view;
|
|
};
|
|
|
|
afterEach(function () {
|
|
if (view) view.clean();
|
|
});
|
|
|
|
it('should render properly', function () {
|
|
var visualizationView = createViewFn();
|
|
visualizationView.render();
|
|
|
|
expect(visualizationView.$('h2').text()).toContain('components.modals.privacy-warning.title.visualization.PUBLIC');
|
|
expect(visualizationView.$('p').text()).toContain('components.modals.privacy-warning.description');
|
|
expect(visualizationView.$('.js-cancel').text()).toContain('components.modals.privacy-warning.cancel');
|
|
expect(visualizationView.$('.js-confirm').text()).toContain('components.modals.privacy-warning.confirm');
|
|
|
|
var datasetView = createViewFn({
|
|
type: 'dataset'
|
|
});
|
|
datasetView.render();
|
|
|
|
expect(datasetView.$('h2').text()).toContain('components.modals.privacy-warning.title.dataset');
|
|
|
|
visualizationView.clean();
|
|
datasetView.clean();
|
|
});
|
|
|
|
it('should invoke confirm callback when clicking confirm', function () {
|
|
var confirmCallbackSpy = jasmine.createSpy();
|
|
|
|
view = createViewFn({
|
|
onConfirm: confirmCallbackSpy
|
|
});
|
|
view.render();
|
|
|
|
view.$('.js-confirm').click();
|
|
|
|
expect(confirmCallbackSpy).toHaveBeenCalled();
|
|
});
|
|
|
|
it('should invoke cancel callback when dismissing the modal', function () {
|
|
var dismissCallbackSpy = jasmine.createSpy();
|
|
|
|
view = createViewFn({
|
|
onDismiss: dismissCallbackSpy
|
|
});
|
|
view.render();
|
|
|
|
view.$('.js-cancel').click();
|
|
|
|
expect(dismissCallbackSpy).toHaveBeenCalled();
|
|
});
|
|
});
|