Class: CodeMaker

Inherits:
Object
  • Object
show all
Includes:
Validation
Defined in:
lib/codebreaker/codemaker.rb

Constant Summary collapse

CORRECT_ANSWER =
['+', '+', '+', '+'].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Validation

#validate_max_length, #validate_min_length, #validate_range

Constructor Details

#initializeCodeMaker

Returns a new instance of CodeMaker.



8
9
10
11
# File 'lib/codebreaker/codemaker.rb', line 8

def initialize
  @code = generate_random_code
  @verified_code = []
end

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code.



4
5
6
# File 'lib/codebreaker/codemaker.rb', line 4

def code
  @code
end

#verified_codeObject (readonly)

Returns the value of attribute verified_code.



4
5
6
# File 'lib/codebreaker/codemaker.rb', line 4

def verified_code
  @verified_code
end

Instance Method Details

#check?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/codebreaker/codemaker.rb', line 19

def check?
  verified_code == CORRECT_ANSWER
end

#verify(user_code) ⇒ Object



13
14
15
16
17
# File 'lib/codebreaker/codemaker.rb', line 13

def verify(user_code)
  return format(user_code) if validate_code(user_code)

  raise CustomErrors::CodeTypeError
end