aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoachim Filip Ignacy Bartosik <jbartosik@gmail.com>2010-07-15 18:10:15 +0200
committerJoachim Filip Ignacy Bartosik <jbartosik@gmail.com>2010-07-21 20:49:50 +0200
commitee2c40ae228841d74764a5e84ae63478a106d558 (patch)
tree9c7d5c0aef6a5a99eace5160c1db2680c2a213e4 /features
parentCleaned question creation a bit (diff)
downloadrecruiting-webapp-ee2c40ae228841d74764a5e84ae63478a106d558.tar.gz
recruiting-webapp-ee2c40ae228841d74764a5e84ae63478a106d558.tar.bz2
recruiting-webapp-ee2c40ae228841d74764a5e84ae63478a106d558.zip
Don't show questions with no content
Necessary fixes included.
Diffstat (limited to 'features')
-rw-r--r--features/clean_ui.feature7
-rw-r--r--features/multiple_choice_questions.feature1
-rw-r--r--features/step_definitions/answers_steps.rb17
-rw-r--r--features/step_definitions/multiple_choice_question_steps.rb6
-rw-r--r--features/step_definitions/questions_steps.rb9
-rw-r--r--features/suggest_questions.feature2
6 files changed, 38 insertions, 4 deletions
diff --git a/features/clean_ui.feature b/features/clean_ui.feature
index d2a8e81..6136fb2 100644
--- a/features/clean_ui.feature
+++ b/features/clean_ui.feature
@@ -52,3 +52,10 @@ Feature: Clean UI
Then I should see following:
|Add text content|Add multiple choice content|
+ Scenario: Don't show questions with no content
+ Given a question "question" in category "category"
+ And question "question" has no content
+ When I am logged in as "recruit"
+ And I follow "Question Categories"
+ And I follow "category"
+ Then I should see "No questions to display"
diff --git a/features/multiple_choice_questions.feature b/features/multiple_choice_questions.feature
index b415036..bd37e43 100644
--- a/features/multiple_choice_questions.feature
+++ b/features/multiple_choice_questions.feature
@@ -6,6 +6,7 @@ Feature: Multiple Choice
Scenario: Creating Multiple Choice Questions
Given I am logged in as administrator
And a question "question"
+ And question "question" has no content
And I am on show "question" question page
When I follow "Add multiple choice content"
And fill in "question_content_multiple_choice[content]" with "Some question?"
diff --git a/features/step_definitions/answers_steps.rb b/features/step_definitions/answers_steps.rb
index dc2b0d9..78caf0c 100644
--- a/features/step_definitions/answers_steps.rb
+++ b/features/step_definitions/answers_steps.rb
@@ -4,9 +4,24 @@ Given /^(?:|a )answer of "([^\"]*)" for question "([^\"]*)"$/ do |user, question
@answer = @question.answer_of @user
if @answer.nil?
if @question.content.nil?
- @answer = Answer.create!(:owner => @user, :question => @question, :content => "fake")
+ @answer = Answer.create!(:owner => @user, :question => @question, :content => "fake")
else
@answer = @question.content.new_answer_of(@user)
+ @answer.save!
+ end
+ end
+end
+
+Given /^(?:|a )reference answer for question "([^\"]*)"$/ do |question|
+ Given "a question \"#{question}\""
+ @answer = @question.reference_answer
+ if @answer.nil?
+ if @question.content.nil?
+ @answer = Answer.create!(:reference => true, :question => @question, :content => "fake")
+ else
+ @answer = @question.content.new_answer_of(nil)
+ @answer.reference = true
+ @answer.save!
end
end
end
diff --git a/features/step_definitions/multiple_choice_question_steps.rb b/features/step_definitions/multiple_choice_question_steps.rb
index 98f0828..242e46f 100644
--- a/features/step_definitions/multiple_choice_question_steps.rb
+++ b/features/step_definitions/multiple_choice_question_steps.rb
@@ -8,6 +8,8 @@ end
Given /^a multiple choice content "([^\"]*)" for "([^\"]*)"$/ do |content, question|
Given "a multiple choice content \"#{content}\""
Given "a question \"#{question}\""
+ @question.content.destroy unless @question.content.is_a?(QuestionContentMultipleChoice) || @question.content.nil?
+ @question.reload
@content.question = @question
@content.save!
end
@@ -34,9 +36,9 @@ Given /^reference choice for "([^"]*)":$/ do |content, table|
res.push cur.id if table.include?(cur.content)
res
end
- Given "answer of \"#{user}\" for question \"#{content}\""
+ Given "reference answer for question \"#{content}\""
+
@answer.options = ans
- @answer.reference = true
@answer.save!
end
diff --git a/features/step_definitions/questions_steps.rb b/features/step_definitions/questions_steps.rb
index 7e884bb..fce0762 100644
--- a/features/step_definitions/questions_steps.rb
+++ b/features/step_definitions/questions_steps.rb
@@ -3,6 +3,10 @@ Given /^a question "([^\"]*)"$/ do |title|
if @question.nil?
@question = Question.create!( :title => title)
end
+ if @question.content.nil?
+ QuestionContentText.create! :question => @question, :content => "fake"
+ @question.reload
+ end
end
Given /^a question "([^\"]*)" in category "([^\"]*)"$/ do |title, category|
@@ -45,3 +49,8 @@ Then /^I should not see following:$/ do |table|
Then "I should not see \"#{txt}\""
end
end
+
+Given /^question "([^"]*)" has no content$/ do |title|
+ Given "a question \"#{title}\""
+ @question.content._?.destroy
+end
diff --git a/features/suggest_questions.feature b/features/suggest_questions.feature
index 22ac498..4cb76f2 100644
--- a/features/suggest_questions.feature
+++ b/features/suggest_questions.feature
@@ -21,7 +21,7 @@ Feature: Suggest Questions
Then I should see "question" within ".collection.questions"
And I should not see "some question" within ".collection.questions"
When I follow "question"
- And follow "(Edit)"
+ And follow "information"
And check "question[approved]"
And press "Save"
Then I should see "Changes to the question were saved" within ".flash.notice"