Skip to content

Instantly share code, notes, and snippets.

@Filip-Mitov
Last active August 29, 2015 13:59
Show Gist options
  • Save Filip-Mitov/10780833 to your computer and use it in GitHub Desktop.
Save Filip-Mitov/10780833 to your computer and use it in GitHub Desktop.
Nonogram test with python logo
import unittest
from solution import validate_nonogram
class TestValidateNonogram(unittest.TestCase):
def test_validate_python_nonogram(self):
rows = [[12], [14], [3, 11], [3, 11], [16],
[16], [16], [7], [26], [22, 1],
[23, 1], [23, 1], [23, 1], [22, 1], [21, 1],
[8, 1], [7, 1], [7, 1], [7, 1], [7, 1],
[6, 1], [6, 15], [1, 1], [1, 10], [1, 1],
[1, 1], [1, 2, 1], [1, 2, 1], [1, 1], [12]]
cols = [
[10], [12], [14], [14], [14],
[14], [14], [5, 8, 7], [6, 7, 1], [7, 7, 1],
[2, 3, 7, 1], [2, 3, 7, 1], [7, 7, 1],
[7, 7, 3, 1], [7, 7, 1, 1, 1],
[7, 7, 1, 1, 1], [15, 1, 1, 1], [15, 1, 1, 1],
[15, 1, 1, 2, 1], [15, 1, 1, 2, 1],
[15, 1, 1, 1], [13, 1, 1, 1], [11, 1, 5], [1, 1], [1, 1],
[1, 1], [1, 1], [1, 1], [1, 1], [10]
]
keys = {'rows': rows, 'columns': cols}
python_nonogram = [
[' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X',
'X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X','X','X',' ',' ','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X','X','X',' ',' ','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',
' ','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X','X','X','X','X','X',' ',' '],
[' ','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ','X',' '],
['X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
'X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X'],
['X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X'],
[' ','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X',' '],
[' ',' ','X','X','X','X','X','X',' ',' ',' ',' ',' ','X','X',
'X','X','X','X','X','X','X','X','X','X','X','X','X',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ','X',' ',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ','X','X',
'X','X','X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ','X','X',' ',' ','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' ',
' ',' ',' ','X','X',' ',' ','X',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',
' ',' ',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ',' ',' '],
[' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X','X','X','X','X',
'X','X','X','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',' ']
]
self.assertTrue(validate_nonogram(python_nonogram, keys))
if __name__ == '__main__':
unittest.main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment