Sha256: 5d11613889ed05f1ffb3e1f5b7530f528f37b929952bf0b2e2d1fb7a5954697e

Contents?: true

Size: 415 Bytes

Versions: 8

Compression:

Stored size: 415 Bytes

Contents

# frozen_string_literal: true

module Codebreaker
  module Validation
    NUMBERS = /^[1-6]{4}$/

    def validate_name(name)
      raise LengthError unless Constants::NAME_LENGTH.cover?(name.length)
    end

    def validate_guess(code)
      raise InputError unless  NUMBERS.match?(code)
    end

    def validate_state(state, current_state)
      raise StateError unless state == current_state
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
codebreaker-mikhail-0.2.4 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.2.3 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.2.2 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.2.1 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.2.0 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.1.5 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.1.4 lib/codebreaker/validation/validation.rb
codebreaker-mikhail-0.1.3 lib/codebreaker/validation/validation.rb