Class: Quizz

Inherits:
Object
  • Object
show all
Defined in:
lib/quizzer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(quizz) ⇒ Quizz

Returns a new instance of Quizz.



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# 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

Instance Attribute Details

#questionsObject

Returns the value of attribute questions.



52
53
54
# File 'lib/quizzer.rb', line 52

def questions
  @questions
end