Class: JLDrill::SampleQuiz
- Inherits:
-
Object
- Object
- JLDrill::SampleQuiz
- Defined in:
- lib/jldrill/spec/SampleQuiz.rb
Overview
This is a helper class for the tests. It simply represents a small quiz. The various parts of the quiz are broken down to facilitate testing.
Constant Summary collapse
- FileHeader =
JLDrill::VERSION + "-LDRILL-SAVE Testfile"
- FileInfo =
%Q[ # This is the info line]- FileOptions =
%Q[ Random Order Promotion Threshold: 4 Introduction Threshold: 17 Review Meaning Review Kanji]- FileDefaultOptions =
%Q[ Promotion Threshold: 2 Introduction Threshold: 10 Review Meaning Review Kanji]- FileVocab =
%Q[ Unseen /Kanji: 会う/Reading: あう/Definitions: to meet,to interview/Markers: v5u,P/Position: 0/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ Poor Fair /Kanji: 青い/Reading: あおい/Definitions: blue,pale,green,unripe,inexperienced/Markers: adj,P/Position: 1/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ Good Excellent /Kanji: 赤い/Reading: あかい/Definitions: red/Markers: adj,P/Position: 2/Consecutive: 1/MeaningProblem/Score: 0/Level: 0/LastReviewed: 1230076403/Duration: 10/Difficulty: 0/ /Kanji: 明い/Reading: あかるい/Definitions: bright,cheerful/Markers: adj/Position: 3/Consecutive: 1/MeaningProblem/Score: 0/Level: 0/LastReviewed: 1230076403/Duration: 10/Difficulty: 0/ Forgotten ]- ResetVocab =
The following is the same vocabulary but with the quiz reset so that every item is unseen.
%Q[ Unseen /Kanji: 青い/Reading: あおい/Definitions: blue,pale,green,unripe,inexperienced/Markers: adj,P/Position: 1/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ /Kanji: 赤い/Reading: あかい/Definitions: red/Markers: adj,P/Position: 2/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ /Kanji: 明い/Reading: あかるい/Definitions: bright,cheerful/Markers: adj/Position: 3/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ Poor /Kanji: 会う/Reading: あう/Definitions: to meet,to interview/Markers: v5u,P/Position: 0/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/ ]- AllVocab =
This is the result of allVocab joined with \n
%Q[/Kanji: 会う/Reading: あう/Definitions: to meet,to interview/Markers: v5u,P /Kanji: 青い/Reading: あおい/Definitions: blue,pale,green,unripe,inexperienced/Markers: adj,P /Kanji: 赤い/Reading: あかい/Definitions: red/Markers: adj,P /Kanji: 明い/Reading: あかるい/Definitions: bright,cheerful/Markers: adj]- NewVocab =
This is a new vocabulary to use for adding to the quiz
"/Kanji: 秋/Reading: あき/Definitions: autumn,fall/Markers: n-adv,P/Position: -1/Consecutive: 0/MeaningProblem/Score: 0/Level: 0/Difficulty: 0/"- FileString =
FileHeader + FileInfo + FileOptions + FileVocab
- ResetString =
FileHeader + FileInfo + FileOptions + ResetVocab
- DefaultString =
FileHeader + FileInfo + ResetVocab
Instance Attribute Summary collapse
-
#defaultQuiz ⇒ Object
readonly
Returns the value of attribute defaultQuiz.
-
#emptyQuiz ⇒ Object
readonly
Returns the value of attribute emptyQuiz.
-
#quiz ⇒ Object
readonly
Returns the value of attribute quiz.
-
#resetQuiz ⇒ Object
readonly
Returns the value of attribute resetQuiz.
Instance Method Summary collapse
- #allResetVocab ⇒ Object
- #allVocab ⇒ Object
- #defaultSaveFile ⇒ Object
- #file ⇒ Object
- #header ⇒ Object
- #info ⇒ Object
-
#initialize ⇒ SampleQuiz
constructor
A new instance of SampleQuiz.
- #onlyVocab(string) ⇒ Object
- #resetFile ⇒ Object
- #resetVocab ⇒ Object
- #sampleVocab ⇒ Object
- #vocab ⇒ Object
Constructor Details
#initialize ⇒ SampleQuiz
Returns a new instance of SampleQuiz.
74 75 76 77 78 79 80 81 82 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 74 def initialize @quiz = Quiz.new @quiz.loadFromString("SampleQuiz", FileString) @resetQuiz = Quiz.new @resetQuiz.loadFromString("ResetQuiz", ResetString) @emptyQuiz = Quiz.new @defaultQuiz = Quiz.new @defaultQuiz.loadFromString("DefaultQuiz", DefaultString) end |
Instance Attribute Details
#defaultQuiz ⇒ Object (readonly)
Returns the value of attribute defaultQuiz.
72 73 74 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 72 def defaultQuiz @defaultQuiz end |
#emptyQuiz ⇒ Object (readonly)
Returns the value of attribute emptyQuiz.
72 73 74 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 72 def emptyQuiz @emptyQuiz end |
#quiz ⇒ Object (readonly)
Returns the value of attribute quiz.
72 73 74 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 72 def quiz @quiz end |
#resetQuiz ⇒ Object (readonly)
Returns the value of attribute resetQuiz.
72 73 74 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 72 def resetQuiz @resetQuiz end |
Instance Method Details
#allResetVocab ⇒ Object
114 115 116 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 114 def allResetVocab AllVocab end |
#allVocab ⇒ Object
110 111 112 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 110 def allVocab AllVocab end |
#defaultSaveFile ⇒ Object
130 131 132 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 130 def defaultSaveFile FileHeader + FileInfo + FileDefaultOptions + ResetVocab + "Fair\nGood\nExcellent\nForgotten\n" end |
#file ⇒ Object
118 119 120 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 118 def file FileString end |
#header ⇒ Object
84 85 86 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 84 def header FileHeader end |
#info ⇒ Object
88 89 90 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 88 def info FileInfo end |
#onlyVocab(string) ⇒ Object
100 101 102 103 104 105 106 107 108 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 100 def onlyVocab(string) retVal = "" string.split("\n").each do |line| if line =~ /^\// retVal += line + "\n" end end retVal end |
#resetFile ⇒ Object
122 123 124 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 122 def resetFile ResetString end |
#resetVocab ⇒ Object
96 97 98 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 96 def resetVocab ResetVocab end |
#sampleVocab ⇒ Object
126 127 128 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 126 def sampleVocab Vocabulary::create(NewVocab) end |
#vocab ⇒ Object
92 93 94 |
# File 'lib/jldrill/spec/SampleQuiz.rb', line 92 def vocab FileVocab end |