class Codebreaker::Verifier

Constants

COMMANDS

Public Class Methods

verify_valid_code(code) click to toggle source
# File lib/codebreaker/utils/verifier.rb, line 20
def verify_valid_code(code)
  return false unless code.is_a?(String)

  return false unless verify_size?(code, min_size: Game::LENGTH_CODE, max_size: Game::LENGTH_CODE)

  verify_include?(code)
end
verify_valid_difficult(difficult) click to toggle source
# File lib/codebreaker/utils/verifier.rb, line 16
def verify_valid_difficult(difficult)
  COMMANDS.values.include?(difficult)
end
verify_valid_name(name) click to toggle source
# File lib/codebreaker/utils/verifier.rb, line 12
def verify_valid_name(name)
  name.is_a?(String) && verify_size?(name, min_size: Player::MIN_LENGTH_NAME, max_size: Player::MAX_LENGTH_NAME)
end

Private Class Methods

verify_include?(code) click to toggle source
# File lib/codebreaker/utils/verifier.rb, line 30
def verify_include?(code)
  code.chars.all? { |char| Game::VALID_NUMBERS.include?(char.to_i) }
end
verify_size?(value, min_size:, max_size:) click to toggle source
# File lib/codebreaker/utils/verifier.rb, line 34
def verify_size?(value, min_size:, max_size:)
  value.size.between?(min_size, max_size)
end