class P5_T_34::ExamRipper

Attributes

finalExam[R]

Public Class Methods

new() click to toggle source

Constructor inicializa las variables

# File lib/P5_T_34/ExamRipper.rb, line 11
def initialize()
    @finalExam = Exam.new()
    @questionTmp = nil
end

Public Instance Methods

question(questionText, trueFalseQ=false) click to toggle source

Define el enunciado de una pregunta

# File lib/P5_T_34/ExamRipper.rb, line 20
def question (questionText, trueFalseQ=false)
    if (trueFalseQ) 
        @questionTmp = QuestionVF.new(questionText)
    else
        @questionTmp = Question.new(questionText)
    end
    @finalExam.push(@questionTmp)
end
right(answerText) click to toggle source

Define la respuesta correcta

# File lib/P5_T_34/ExamRipper.rb, line 29
def right (answerText)
    raise RuntimeError, "Falta iniciar una pregunta." unless (@questionTmp != nil)
    raise RuntimeError, "Ya hay una respuesta correcta definida" unless (@questionTmp.correct == nil)
    
    @questionTmp.correct = answerText
    
    if (@questionTmp.instance_of? QuestionVF)
       @questionTmp.distractor = [!answerText ]
    end
    
end
run() click to toggle source

Mostrar por pantalla el examen

# File lib/P5_T_34/ExamRipper.rb, line 53
def run
    raise RuntimeError, "Falta iniciar un examen." unless (@finalExam != nil)
    
    puts "\n" + @finalExam.to_s
end
title(titleText) click to toggle source

Definir el titulo del examen

# File lib/P5_T_34/ExamRipper.rb, line 16
def title (titleText)
    @finalExam.title = titleText
end
wrong(answerText) click to toggle source

Añade una respuesta incorrecta o distractor

# File lib/P5_T_34/ExamRipper.rb, line 41
def wrong (answerText)
    raise RuntimeError, "Falta iniciar una pregunta." unless (@questionTmp != nil)
    raise RuntimeError, "Es una pregunta de tipo Verdadero/Falso. No se le añaden respuestas incorrectas personalizadas" unless (@questionTmp.instance_of? Question)

    if @questionTmp.distractor == nil 
        @questionTmp.distractor = [answerText] 
    else
        @questionTmp.distractor << answerText
    end
    
end