Commit d9997887 by Usman Khalid

Merge pull request #12312 from edx/usman/tnl4398-fix-tests

Re-enable spec files that were disabled during the Jasmine upgrade.
parents da5b9728 78af4100
...@@ -231,9 +231,9 @@ testFiles = [ ...@@ -231,9 +231,9 @@ testFiles = [
"coffee/spec/views/upload_spec", "coffee/spec/views/upload_spec",
"js/spec/video/transcripts/utils_spec", "js/spec/video/transcripts/utils_spec",
"js/spec/video/transcripts/editor_spec", "js/spec/video/transcripts/editor_spec",
# "js/spec/video/transcripts/videolist_spec", "js/spec/video/transcripts/videolist_spec",
# "js/spec/video/transcripts/message_manager_spec", "js/spec/video/transcripts/message_manager_spec",
# "js/spec/video/transcripts/file_uploader_spec", "js/spec/video/transcripts/file_uploader_spec",
"js/spec/models/component_template_spec", "js/spec/models/component_template_spec",
"js/spec/models/explicit_url_spec", "js/spec/models/explicit_url_spec",
"js/spec/models/xblock_info_spec", "js/spec/models/xblock_info_spec",
......
...@@ -98,15 +98,9 @@ define ["js/views/course_info_handout", "js/views/course_info_update", "js/model ...@@ -98,15 +98,9 @@ define ["js/views/course_info_handout", "js/views/course_info_update", "js/model
@courseInfoEdit.onNew(@event) @courseInfoEdit.onNew(@event)
expect(@courseInfoEdit.$el.find('.save-button').hasClass("is-disabled")).toEqual(false) expect(@courseInfoEdit.$el.find('.save-button').hasClass("is-disabled")).toEqual(false)
@courseInfoEdit.$el.find('input.date').val(value).trigger("change") @courseInfoEdit.$el.find('input.date').val(value).trigger("change")
courseInfoEdit = @courseInfoEdit expect(@courseInfoEdit.$el.find('.save-button').hasClass("is-disabled")).toEqual(true)
jasmine.waitUntil(-> @courseInfoEdit.$el.find('input.date').val("01/01/16").trigger("change")
courseInfoEdit.$el.find('.save-button').hasClass('is-disabled') == true expect(@courseInfoEdit.$el.find('.save-button').hasClass("is-disabled")).toEqual(false)
).then ->
courseInfoEdit.$el.find('input.date').val('01/01/16').trigger 'change'
jasmine.waitUntil(->
courseInfoEdit.$el.find('.save-button').hasClass('is-disabled') == false
).always done
return
cancelEditingUpdate = (update, modalCover, useCancelButton) -> cancelEditingUpdate = (update, modalCover, useCancelButton) ->
if useCancelButton if useCancelButton
......
...@@ -5,8 +5,9 @@ define( ...@@ -5,8 +5,9 @@ define(
"xmodule", "jquery.form" "xmodule", "jquery.form"
], ],
function ($, _, Utils, FileUploader) { function ($, _, Utils, FileUploader) {
// TODO: fix TNL-559 Intermittent failures of Transcript FileUploader JS tests 'use strict';
xdescribe('Transcripts.FileUploader', function () {
describe('Transcripts.FileUploader', function () {
var videoListEntryTemplate = readFixtures( var videoListEntryTemplate = readFixtures(
'video/transcripts/metadata-videolist-entry.underscore' 'video/transcripts/metadata-videolist-entry.underscore'
), ),
...@@ -67,10 +68,9 @@ function ($, _, Utils, FileUploader) { ...@@ -67,10 +68,9 @@ function ($, _, Utils, FileUploader) {
it('Template doesn\'t exist', function () { it('Template doesn\'t exist', function () {
spyOn(console, 'error'); spyOn(console, 'error');
view.uploadTpl = ''; view.uploadTpl = '';
view.render();
expect(console.error).toHaveBeenCalled();
expect(view.render).not.toThrow(); expect(view.render).not.toThrow();
expect(console.error).toHaveBeenCalled();
expect(_.template).not.toHaveBeenCalled(); expect(_.template).not.toHaveBeenCalled();
}); });
...@@ -78,8 +78,6 @@ function ($, _, Utils, FileUploader) { ...@@ -78,8 +78,6 @@ function ($, _, Utils, FileUploader) {
function () { function () {
$('.transcripts-file-uploader').remove(); $('.transcripts-file-uploader').remove();
view.render();
expect(view.render).not.toThrow(); expect(view.render).not.toThrow();
expect(_.template).not.toHaveBeenCalled(); expect(_.template).not.toHaveBeenCalled();
} }
...@@ -93,8 +91,6 @@ function ($, _, Utils, FileUploader) { ...@@ -93,8 +91,6 @@ function ($, _, Utils, FileUploader) {
}).join(', '); }).join(', ');
view.validFileExtensions = validFileExtensions; view.validFileExtensions = validFileExtensions;
view.render();
expect(view.render).not.toThrow(); expect(view.render).not.toThrow();
expect(_.template).toHaveBeenCalled(); expect(_.template).toHaveBeenCalled();
$.each(elList, function(index, el) { $.each(elList, function(index, el) {
......
...@@ -6,9 +6,9 @@ define( ...@@ -6,9 +6,9 @@ define(
"xmodule" "xmodule"
], ],
function ($, _, Utils, MessageManager, FileUploader, sinon) { function ($, _, Utils, MessageManager, FileUploader, sinon) {
'use strict';
// TODO: fix TNL-559 Intermittent failures of Transcript FileUploader JS tests describe('Transcripts.MessageManager', function () {
xdescribe('Transcripts.MessageManager', function () {
var videoListEntryTemplate = readFixtures( var videoListEntryTemplate = readFixtures(
'video/transcripts/metadata-videolist-entry.underscore' 'video/transcripts/metadata-videolist-entry.underscore'
), ),
...@@ -46,7 +46,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) { ...@@ -46,7 +46,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) {
); );
$container = $('#metadata-videolist-entry'); $container = $('#metadata-videolist-entry');
spyOn(fileUploader, 'initialize'); spyOn(fileUploader, 'initialize').and.callThrough();
spyOn(console, 'error'); spyOn(console, 'error');
spyOn(Utils.Storage, 'set'); spyOn(Utils.Storage, 'set');
...@@ -66,12 +66,11 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) { ...@@ -66,12 +66,11 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) {
}); });
}); });
// Disabled 2/6/14 after intermittent failure in master
describe('Render', function () { describe('Render', function () {
beforeEach(function () { beforeEach(function () {
spyOn(_,'template').and.callThrough(); spyOn(_,'template').and.callThrough();
spyOn(fileUploader, 'render'); spyOn(view.fileUploader, 'render');
}); });
it('Template doesn\'t exist', function () { it('Template doesn\'t exist', function () {
...@@ -81,7 +80,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) { ...@@ -81,7 +80,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) {
expect(_.template).not.toHaveBeenCalled(); expect(_.template).not.toHaveBeenCalled();
expect(view.$el.find('.transcripts-status')) expect(view.$el.find('.transcripts-status'))
.toHaveClass('is-invisible'); .toHaveClass('is-invisible');
expect(fileUploader.render).not.toHaveBeenCalled(); expect(view.fileUploader.render).not.toHaveBeenCalled();
}); });
it('All works okay if correct data is passed', function () { it('All works okay if correct data is passed', function () {
...@@ -90,7 +89,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) { ...@@ -90,7 +89,7 @@ function ($, _, Utils, MessageManager, FileUploader, sinon) {
expect(console.error).not.toHaveBeenCalled(); expect(console.error).not.toHaveBeenCalled();
expect(_.template).toHaveBeenCalled(); expect(_.template).toHaveBeenCalled();
expect(view.$el).not.toHaveClass('is-invisible'); expect(view.$el).not.toHaveClass('is-invisible');
expect(fileUploader.render).toHaveBeenCalled(); expect(view.fileUploader.render).toHaveBeenCalled();
}); });
}); });
......
...@@ -15,21 +15,13 @@ function($, date, TriggerChangeEventOnEnter) { ...@@ -15,21 +15,13 @@ function($, date, TriggerChangeEventOnEnter) {
var timefield = $(div).find("input.time"); var timefield = $(div).find("input.time");
var cacheview = view; var cacheview = view;
var setfield = function (event) { var setfield = function (event) {
var newVal = getDate(datefield, timefield), var newVal = getDate(datefield, timefield);
oldTime = new Date(cacheModel.get(fieldName)).getTime();
if (newVal) { // Setting to null clears the time as well, as date and time are linked.
if (!cacheModel.has(fieldName) || oldTime !== newVal.getTime()) {
cacheview.clearValidationErrors();
cacheview.setAndValidate(fieldName, newVal, event);
}
}
else {
// Clear date (note that this clears the time as well, as date and time are linked).
// Note also that the validation logic prevents us from clearing the start date // Note also that the validation logic prevents us from clearing the start date
// (start date is required by the back end). // (start date is required by the back end).
cacheview.clearValidationErrors(); cacheview.clearValidationErrors();
cacheview.setAndValidate(fieldName, null, event); cacheview.setAndValidate(fieldName, (newVal || null), event);
}
}; };
// instrument as date and time pickers // instrument as date and time pickers
......
...@@ -71,7 +71,7 @@ define(["js/views/validation", "codemirror", "js/models/course_update", ...@@ -71,7 +71,7 @@ define(["js/views/validation", "codemirror", "js/models/course_update",
}, },
handleValidationError : function(model, error) { handleValidationError : function(model, error) {
var ele = this.$el.find('#course-update-list li[name=\"'+model.cid+'\"'); var ele = this.$el.find('#course-update-list li[name=\"'+model.cid+'\"]');
$(ele).find('.message-error').remove(); $(ele).find('.message-error').remove();
for (var field in error) { for (var field in error) {
if (error.hasOwnProperty(field)) { if (error.hasOwnProperty(field)) {
...@@ -86,7 +86,7 @@ define(["js/views/validation", "codemirror", "js/models/course_update", ...@@ -86,7 +86,7 @@ define(["js/views/validation", "codemirror", "js/models/course_update",
validateModel: function(model) { validateModel: function(model) {
if (model.isValid()) { if (model.isValid()) {
var ele = this.$el.find('#course-update-list li[name=\"' + model.cid + '\"'); var ele = this.$el.find('#course-update-list li[name=\"' + model.cid + '\"]');
$(ele).find('.message-error').remove(); $(ele).find('.message-error').remove();
$(ele).find('.save-button').removeClass('is-disabled'); $(ele).find('.save-button').removeClass('is-disabled');
} }
......
...@@ -19,7 +19,8 @@ function($, Backbone, _, Utils) { ...@@ -19,7 +19,8 @@ function($, Backbone, _, Utils) {
initialize: function (options) { initialize: function (options) {
_.bindAll(this, _.bindAll(this,
'changeHandler', 'clickHandler', 'xhrResetProgressBar', 'xhrProgressHandler', 'xhrCompleteHandler' 'changeHandler', 'clickHandler', 'xhrResetProgressBar', 'xhrProgressHandler', 'xhrCompleteHandler',
'render'
); );
this.options = _.extend({}, options); this.options = _.extend({}, options);
this.file = false; this.file = false;
......
(function (WAIT_TIMEOUT) { (function (WAIT_TIMEOUT) {
'use strict'; 'use strict';
xdescribe('VideoBumper', function () { describe('VideoBumper', function () {
var state, oldOTBD, waitForPlaying; var state, oldOTBD, waitForPlaying;
waitForPlaying = function (state, done) { waitForPlaying = function (state, done) {
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
}); });
it('can show the main video on error', function (done) { it('can show the main video on error', function (done) {
state.el.trigger('error'); state.el.triggerHandler('error');
jasmine.clock().tick(20); jasmine.clock().tick(20);
expect($('.is-bumper')).not.toExist(); expect($('.is-bumper')).not.toExist();
waitForPlaying(state, done); waitForPlaying(state, done);
...@@ -85,7 +85,7 @@ ...@@ -85,7 +85,7 @@
it('can save appropriate states correctly on error', function () { it('can save appropriate states correctly on error', function () {
var saveState = jasmine.createSpy('saveState'); var saveState = jasmine.createSpy('saveState');
state.bumperState.videoSaveStatePlugin.saveState = saveState; state.bumperState.videoSaveStatePlugin.saveState = saveState;
state.el.trigger('error'); state.el.triggerHandler('error');
expect(state.storage.getItem('isBumperShown')).toBeTruthy(); expect(state.storage.getItem('isBumperShown')).toBeTruthy();
jasmine.clock().tick(20); jasmine.clock().tick(20);
expect(saveState).toHaveBeenCalledWith(true, { expect(saveState).toHaveBeenCalledWith(true, {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment