Class: Csv2qti::MultipleChoice
- Defined in:
- lib/csv2qti/question_types/multiple_choice.rb
Constant Summary
Constants inherited from Question
Question::CORRECT, Question::DISTRACTOR_1, Question::DISTRACTOR_2, Question::LICENSE, Question::STEM, Question::TYPE
Instance Attribute Summary collapse
-
#answer ⇒ Object
readonly
Returns the value of attribute answer.
-
#distractors ⇒ Object
readonly
Returns the value of attribute distractors.
Attributes inherited from Question
Instance Method Summary collapse
- #generate_cc_question ⇒ Object
-
#initialize(row) ⇒ MultipleChoice
constructor
A new instance of MultipleChoice.
- #to_qti ⇒ Object
- #type ⇒ Object
Methods inherited from Question
#add_to_assessment, #add_to_group, generate, #process_distractors, #process_stem, #to_s
Constructor Details
#initialize(row) ⇒ MultipleChoice
Returns a new instance of MultipleChoice.
6 7 8 9 10 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 6 def initialize(row) super(row) @distractors = process_distractors(row) @answer = row[CORRECT] end |
Instance Attribute Details
#answer ⇒ Object (readonly)
Returns the value of attribute answer.
4 5 6 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 4 def answer @answer end |
#distractors ⇒ Object (readonly)
Returns the value of attribute distractors.
4 5 6 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 4 def distractors @distractors end |
Instance Method Details
#generate_cc_question ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 16 def generate_cc_question question = CanvasCc::CanvasCC::Models::Question.create('multiple_choice_question') question.material = stem question.identifier = rand(10000) question.answers = @distractors.map {|d| make_answer(d)} << make_answer(@answer, true) question end |
#to_qti ⇒ Object
25 26 27 28 29 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 25 def to_qti Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |node| CanvasCc::CanvasCC::MultipleChoiceQuestionWriter.write_question(node, generate_cc_question) end.doc.to_xml end |
#type ⇒ Object
12 13 14 |
# File 'lib/csv2qti/question_types/multiple_choice.rb', line 12 def type 'MULTIPLE_CHOICE' end |