Name: robodoku_spec_harness
Owner: Turing School of Software & Design
Description: Automated spec harness for Turing's Robodoku project
Created: 2015-05-06 22:54:41.0
Updated: 2015-05-07 03:45:59.0
Pushed: 2015-05-07 03:45:58.0
Homepage: null
Size: 144
Language: Ruby
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
This is the evaluation test harness for Robodoku.
For this to run, all the require
statements in your Robodku project must be require_relative
.
Git clone this project into a directory that lives at the same level
as your robodoku
project directory. It should be arranged like:
<my_code_directory>
|
|\
| \robodoku/
|
|\
| \robodoku_spec_harness/
|
Change directories into the robodoku_spec_harness/
directory and then execute:
$ bundle
This will load in your Robodoku
implementation from your local file system.
To test your implementation against the evaluation specs, run:
$ rake spec
The spec harness will provide the paths to puzzle source files as absolute paths (meaning full paths from the root of the filesystem). For this reason, you should not try to join or otherwise manipulate these paths.
Remember that, as specified in the project spec, your solver should output solved puzzles to the terminal as 9 lines of text with each line having 9 columns.
For Example:
94317
38942
21865
59278
67153
13694
42786
76539
85421
The spec harness will attempt to chomp a single newline off the end of your output, if one is present.
The sample puzzles and solutions for this spec harness were culled from various online sudoku sites and the labeled difficulties are based on how the original sources labeled them.
However what may be difficult for a human solver may not be so difficult for a computer, and vice versa. It's entirely possible that certain algorithms might breeze through a “hard” puzzle but struggle with a “medium.”