Module: Question::Answer
- Defined in:
- lib/jungi/classes.rb
Overview
Question Answer Module
Constant Summary collapse
- YES =
:yes- NO =
:no
Class Method Summary collapse
-
.follows_type?(type, value) ⇒ Boolean
Checks value follows type.
-
.reverse_scale(value) ⇒ Object
Reverse scale value.
-
.reverse_scale7(value) ⇒ Object
Reverse scale7 value.
-
.scale7?(value) ⇒ Boolean
Check value for scale7 value.
-
.scale?(value) ⇒ Boolean
Check value for scale value.
-
.yes_or_no?(value) ⇒ Boolean
Check value for yes or no value.
Class Method Details
.follows_type?(type, value) ⇒ Boolean
Checks value follows type
75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/jungi/classes.rb', line 75 def self.follows_type?(type, value) if type == Question::Type::YESORNO return Question::Answer.yes_or_no?(value) elsif type == Question::Type::SCALE return Question::Answer.scale?(value) elsif type == Question::Type::SCALE7 return Question::Answer.scale7?(value) else fail "#{type} is an invalid question type!" end end |
.reverse_scale(value) ⇒ Object
Reverse scale value
50 51 52 53 54 55 |
# File 'lib/jungi/classes.rb', line 50 def self.reverse_scale(value) unless Question::Answer.scale?(value) fail "#{type} is not a proper scale!" end [5, 4, 3, 2, 1].to_a[value - 1] end |
.reverse_scale7(value) ⇒ Object
Reverse scale7 value
67 68 69 70 71 72 |
# File 'lib/jungi/classes.rb', line 67 def self.reverse_scale7(value) unless Question::Answer.scale7?(value) fail "#{type} is not a proper scale7!" end [7, 6, 5, 4, 3, 2, 1].to_a[value - 1] end |
.scale7?(value) ⇒ Boolean
Check value for scale7 value
58 59 60 61 62 63 64 |
# File 'lib/jungi/classes.rb', line 58 def self.scale7?(value) if (value.instance_of? Fixnum) && value.between?(1, 7) return true else return false end end |
.scale?(value) ⇒ Boolean
Check value for scale value
41 42 43 44 45 46 47 |
# File 'lib/jungi/classes.rb', line 41 def self.scale?(value) if (value.instance_of? Fixnum) && value.between?(1, 5) return true else return false end end |