module Question::Answer

Question Answer Module

Constants

NO
YES

Public Class Methods

follows_type?(type, value) click to toggle source

Checks value follows type

# 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) click to toggle source

Reverse scale value

# 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) click to toggle source

Reverse scale7 value

# 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) click to toggle source

Check value for scale7 value

# 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) click to toggle source

Check value for scale value

# 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
yes_or_no?(value) click to toggle source

Check value for yes or no value

# File lib/jungi/classes.rb, line 32
def self.yes_or_no?(value)
  if value == Question::Answer::YES || value == Question::Answer::NO
    return true
  else
    return false
  end
end