Module: MazeCrosser::BasicGridValidator

Included in:
Maze
Defined in:
lib/maze_crosser/basic_grid_validator.rb

Overview

Module responsible for aplying basic maze validations.

Constant Summary collapse

ALLOWED_CHARACTERS =
{
  empty: '_',
  start: 'S',
  goal: 'G',
  blocked: 'X'
}.freeze

Instance Method Summary collapse

Instance Method Details

#valid?(maze) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
15
# File 'lib/maze_crosser/basic_grid_validator.rb', line 11

def valid?(maze)
  only_valid_characters?(maze) && \
    one_start_and_one_end?(maze) && \
    rectangular?(maze)
end