fix deleting ajax-loaded questions from question banks

fixes #5004

Change-Id: I79e31ac3569fedd1ca7e14c62dfea6964d730e8c
Reviewed-on: https://gerrit.instructure.com/5223
Tested-by: Hudson <hudson@instructure.com>
Tested-by: Selenium <selenium@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
This commit is contained in:
Cody Cutrer 2011-08-23 13:25:25 -06:00
parent b4de1b0e37
commit f673176f01
2 changed files with 31 additions and 4 deletions

View File

@ -162,7 +162,7 @@ $(document).ready(function() {
url = $.replaceTags(url, 'page', currentPage + 1);
$link.text("loading more questions...").addClass('loading');
$.ajaxJSON(url, 'GET', {}, function(data) {
$link.text("more questions").removeClass('loading');
$link.text(I18n.t('links.more_questions', "more questions")).removeClass('loading');
$more_questions.attr('data-current-page', currentPage + 1);
$more_questions.showIf(currentPage + 1 < totalPages);
for(var idx in data.questions) {
@ -170,11 +170,14 @@ $(document).ready(function() {
question.assessment_question_id = question.id;
var $question = $("#question_teaser_blank").clone().removeAttr('id');
$question.fillTemplateData({
data: question.question_data,
id: 'question_teaser_id',
htmlValues: ['question_text'],
data: question,
id: 'question_teaser_' + question.id,
hrefValues: ['id']
});
$question.fillTemplateData({
data: question.question_data,
htmlValues: ['question_text']
});
$question.data('question', question);
$("#questions").append($question);
$question.show();

View File

@ -0,0 +1,24 @@
require File.expand_path(File.dirname(__FILE__) + '/common')
shared_examples_for "question bank selenium tests" do
it_should_behave_like "in-process server selenium tests"
it "deleting AJAX-loaded questions should work" do
course_with_teacher_logged_in
@bank = @course.assessment_question_banks.create!(:title=>'Test Bank')
(1..60).each { |idx| @bank.assessment_questions.create!(:question_data => {'question_name' => "test question #{idx}", 'answers' => [{'id' => 1}, {'id' => 2}]}) { |aq| aq.context = @course } }
get "/courses/#{@course.id}/question_banks/#{@bank.id}"
driver.find_element(:css, ".more_questions_link").click
keep_trying_until { find_all_with_jquery('.question_teaser:visible').length == 60 }
driver.execute_script("$('.question_teaser .links').css('visibility', 'visible')")
driver.execute_script("window.confirm = function(msg) { return true; };")
find_with_jquery(".question_teaser:visible:last .delete_question_link").click
keep_trying_until { find_all_with_jquery('.question_teaser:visible').length == 59 }
@bank.reload
@bank.assessment_questions.select { |aq| !aq.deleted? }.length.should == 59
end
end
describe "question bank Windows-Firefox-Tests" do
it_should_behave_like "question bank selenium tests"
end