class Guess
Class to model answers that are guesses
Attributes
errors[RW]
word_to_guess[R]
Public Class Methods
new(answer, word_to_guess)
click to toggle source
Calls superclass method
Answer::new
# File lib/guess.rb, line 10 def initialize(answer, word_to_guess) super(answer) @word_to_guess = word_to_guess.word valid? end
Public Instance Methods
valid?()
click to toggle source
# File lib/guess.rb, line 16 def valid? self.errors = [] errors << 'Must be a letter' unless letter? errors << 'Must be a single letter or guessing the full word' unless single_letter? || full_word_guess? errors.empty? end
Private Instance Methods
full_word_guess?()
click to toggle source
# File lib/guess.rb, line 33 def full_word_guess? answer.size == word_to_guess.size end
letter?()
click to toggle source
# File lib/guess.rb, line 25 def letter? answer.match?(/[a-z]/) end
single_letter?()
click to toggle source
# File lib/guess.rb, line 29 def single_letter? answer.size == 1 end