class Quizz

Attributes

questions[RW]

Public Class Methods

new(quizz) click to toggle source
# File lib/quizzer.rb, line 54
def initialize(quizz)
  @questions = Hash.new
  quizz["questions"].each do |q|
    case q["type"]
      when 'truefalse' then
        @questions[q["id"]] = TrueFalse.new(q["type"], q["id"], q["questionText"], q["correct"],
                                          { value_ok: q["valueOK"],
                                            value_failed: q["valueFailed"],
                                            feedback: q["feedback"] })
      when 'multichoice' then
        alt = Hash.new
        q["alternatives"].each { |a| alt[a["code"]] = Alternative.new(a["text"], a["code"], a["value"]) }
        @questions[q["id"]] = Multichoice.new(q["type"], q["id"], q["questionText"], alt)
      else
        raise "Unknown type of question"
    end
  end
end