More test scripts
This commit is contained in:
parent
873ffb3428
commit
6195649458
323
test/day3.in
Normal file
323
test/day3.in
Normal file
@ -0,0 +1,323 @@
|
||||
.............#...#....#.....##.
|
||||
.#...##.........#.#.........#.#
|
||||
.....##......#.......#.........
|
||||
.......#...........#.#.........
|
||||
#...........#...#..#.#......#..
|
||||
.........##....#.#...#.........
|
||||
.....#.........#.#...........#.
|
||||
....#...............##....##...
|
||||
#.#.............#..#.......#.#.
|
||||
...#...........................
|
||||
......#..#....#.............#..
|
||||
........#......#.......#.......
|
||||
....#.....#..#.#...#.........#.
|
||||
..#.#.......#.##...#....#.....#
|
||||
...........#.........#..#......
|
||||
#...........#.#..#...#.#.#....#
|
||||
........#......................
|
||||
....#.#.....#....#.......#..#..
|
||||
.............................#.
|
||||
....##..........#.....##......#
|
||||
......#.....................#..
|
||||
..#.....##.......#.............
|
||||
....#.#..............#.#.......
|
||||
..#.#........#.....#..##.......
|
||||
.....#...##.........##....#.#..
|
||||
.#....#..#..#...........#......
|
||||
.............#.....##........#.
|
||||
..#....#............#.........#
|
||||
###..........#........#.......#
|
||||
#...#..#.#.#.........#..#......
|
||||
..#....#......#.............#..
|
||||
#...#........#..#...#.....#....
|
||||
.#..........#.#........#.......
|
||||
#.....#.........#..#......#....
|
||||
....#....##........#......#....
|
||||
.......#....#.....#..#..#.....#
|
||||
.........#...#.#...#.##........
|
||||
.##.##...........#..##..#......
|
||||
.#.##....#........#...#........
|
||||
.......##.........##.####.....#
|
||||
....#..##....#.................
|
||||
.#........#..........#.........
|
||||
##....##..........##........#..
|
||||
#......#...........#....#..#...
|
||||
.......#..#....##..##.....#....
|
||||
.........#.#.#...#.....#.......
|
||||
......#...#...#....#......#....
|
||||
##....#..........#....##....##.
|
||||
###.........#...#...#..........
|
||||
#.....##.#........#.......#....
|
||||
#...............#...##.#......#
|
||||
..#.....####.###......#......#.
|
||||
....#.......#..........#.......
|
||||
....##..............#.#.#......
|
||||
.......##..#.......#...........
|
||||
..#.......##....#.......###...#
|
||||
........#...#.......#.#...#....
|
||||
.........##....#..#....#.......
|
||||
............#.#.......#.#......
|
||||
.....#.....#...#....#.##.......
|
||||
.......#.........#.......#.....
|
||||
.#..#...#.....#............#.##
|
||||
.......#.#......##.............
|
||||
##.#......#.....#.#............
|
||||
.#....#.....#............#...#.
|
||||
.........#.......#.#...........
|
||||
#............#.##...#..#...#.#.
|
||||
......#....#.......#....#......
|
||||
..........#........#..#.#......
|
||||
#..##.......#.........#..#.....
|
||||
.........#.....##........#.#..#
|
||||
..#................#...........
|
||||
....#..#........##.........#..#
|
||||
###...#....##.#......##.......#
|
||||
.......#......##..#.......#....
|
||||
.......###...#...#..........##.
|
||||
................#.......#......
|
||||
.#......##.##........#.........
|
||||
....##.#.....##.......#........
|
||||
...........#...........#.....#.
|
||||
..#........#..#.#...#.#........
|
||||
#...............#...#.##.##.#.#
|
||||
................#.......#......
|
||||
.#..#......#........#.#........
|
||||
...##..#.......#.......#..#....
|
||||
.#.....#.#....##..#........#...
|
||||
........##......#..........#...
|
||||
.#.......#.......#...#..#......
|
||||
.#..##.....#....#............#.
|
||||
...#..........#....#........#..
|
||||
..#.#..#.......#.#.##..........
|
||||
#........###.....#.#.......#.##
|
||||
.....#....##.............#.#..#
|
||||
..##............#...##.........
|
||||
...#.........#...........#.....
|
||||
...#......#.#...#..###.........
|
||||
.............#...##............
|
||||
.....##..##.####.#..#......#.#.
|
||||
.#...#.....#.....#.#.....#.....
|
||||
.........#.......###.....#..##.
|
||||
.##.#..#..........#.##.#.#.....
|
||||
.#...#...#.#.##......#..#......
|
||||
.............#......#......#...
|
||||
#.....................#......#.
|
||||
...#.....#.....#....#........#.
|
||||
................##..#....#..#..
|
||||
#.###...#.....................#
|
||||
...#..#....#.......#.........#.
|
||||
...........#..#..#...........#.
|
||||
.......#..#......#....#.#......
|
||||
..........#......#..#....#.....
|
||||
.#.#.....#...#.#...#...#.#....#
|
||||
.....#.......#............#...#
|
||||
#.#....#......#......#........#
|
||||
.#.#..#.........##...#.........
|
||||
#..###..#......................
|
||||
..#.#..#.......................
|
||||
.##.....#...#......#..#........
|
||||
...#...........#...#.......##..
|
||||
..#...........#........#.......
|
||||
........#....#.....#.#.........
|
||||
..........#...........#.....#..
|
||||
......#...#...##.#.............
|
||||
.#...#...##....................
|
||||
............###.........#......
|
||||
.#.#...................#..#....
|
||||
....#.#...#.#........#.#.......
|
||||
....#...#...........#.......#.#
|
||||
...........#............#...##.
|
||||
.....####....#.#......#.#......
|
||||
.##.............#............#.
|
||||
......#.........#............##
|
||||
#.#....#...##....#.......#....#
|
||||
.....#.#....#..#..#...#..#.#..#
|
||||
.........................#.....
|
||||
......#.#....###.......#....#..
|
||||
.....................##.#...#.#
|
||||
..#.....#.#.#...#...#..........
|
||||
........#..##........#...#...#.
|
||||
..........#.#.##....#....##....
|
||||
.............#..#..............
|
||||
..#.##..#.......#...#..#..##..#
|
||||
..#..#....#.#..........#..#....
|
||||
..........#....#...#......#....
|
||||
.##...#.......................#
|
||||
.#.....#....#..........#.......
|
||||
...........#..#......##.....#..
|
||||
......###.#..##....#...#.##....
|
||||
.......#..#.#....#.............
|
||||
...#..#......##.........###.#..
|
||||
...........#............##...#.
|
||||
...#...#...........##.....#....
|
||||
..................#............
|
||||
.#.#.#...#..............#..##..
|
||||
#.#....#........#.........#.##.
|
||||
#.#.#.......#.....#..........#.
|
||||
...##.....##.#.....#...........
|
||||
.#....#..............##...##..#
|
||||
........##.....................
|
||||
#..#..#.....###.............#..
|
||||
.......#...........#...........
|
||||
.........#.....................
|
||||
.......#...#...#.....##........
|
||||
......#.........#........#.....
|
||||
...#....##..#.####.#.......#.#.
|
||||
.....#..#......#........#.##..#
|
||||
.##....#......##......#...###..
|
||||
..###.#........##.#...#.......#
|
||||
............#......##....#.#...
|
||||
.....#....##..##............##.
|
||||
......##....#.#...#....#.#..#.#
|
||||
.......#.........#.#.....#.#...
|
||||
.......#.#....#................
|
||||
.##...###..#.....#............#
|
||||
#.#......#.#..#..#.#...#..#..#.
|
||||
..#.#.#.....#............#...##
|
||||
.##....###.........#..#........
|
||||
.#..#.#..#.#....#.........##.#.
|
||||
....#..#...##.##........#......
|
||||
........#.#....##....#....#....
|
||||
.......#..#..#.#..............#
|
||||
#....#....#.....#....#.........
|
||||
.#.###...#....#.......#........
|
||||
.........#.#....##....#...#....
|
||||
....#.............#.....##.##..
|
||||
.....#.....#...##..#.#.##...##.
|
||||
.........#..#................##
|
||||
...##..##......#.....#........#
|
||||
.#....#.....#.#......#..###....
|
||||
#.....#..#.....................
|
||||
....#.#...#.#.................#
|
||||
.....##..................#.....
|
||||
#....##...#.##..###...#........
|
||||
##.#.........#.......#....#....
|
||||
.#.#.............##..#.##......
|
||||
...#.#..............#......#...
|
||||
.............#.........#.....#.
|
||||
#.......#........#......#.....#
|
||||
.....#..............#.##.#.....
|
||||
#......##...................#..
|
||||
##.#.....#..........#........#.
|
||||
#...........##...........#.....
|
||||
.#...#.....#..#..##....#.......
|
||||
.....#.........#....##.#.......
|
||||
#........#......#.............#
|
||||
.#..................####.#.....
|
||||
#...#......#....##...#.#..#..#.
|
||||
............#.#............#...
|
||||
............#........#.#..###..
|
||||
.#..#..#..#.#.#.....#.#........
|
||||
#.....#..#.#...#..#..#........#
|
||||
#................#....#..#.....
|
||||
....#..#..#.#......#.#..#.....#
|
||||
.#..#.......#...##.#.#.....#..#
|
||||
#.....................#.......#
|
||||
.............#.......#...#.....
|
||||
....#......#.........###.##....
|
||||
....#..#.......#.#........#....
|
||||
....#...#....#.#....#..........
|
||||
...#..#......#.............#...
|
||||
.......###.#.........#....#.#..
|
||||
..#.....##.....................
|
||||
.#.#...........#..##....#......
|
||||
..........##.#....#.#..........
|
||||
...........#.#..#.#..#.#.......
|
||||
..........#..#...#.....##......
|
||||
.....#.........#...#.#..#......
|
||||
#.#................#..........#
|
||||
...#.....##.#..#...#.##.......#
|
||||
.....##...........#............
|
||||
.....#...#...#...#.#.....#.....
|
||||
...........##..................
|
||||
.........#................#....
|
||||
......#.....#.#...#.......#....
|
||||
...#...#........#...#...#.#.#..
|
||||
...............##..#....##...#.
|
||||
...#.#...........##.......##..#
|
||||
...........#............#......
|
||||
.#....#.#.......##.#.#.#.......
|
||||
.....#.#..#.#.#................
|
||||
.#............#...#.#..........
|
||||
.....#.......#.#.......#.....#.
|
||||
#....#...........#...#....##...
|
||||
..#...#..##.....#....#..#......
|
||||
#.#.........#..#.#..#.#......#.
|
||||
................#......##......
|
||||
#........#..............#....#.
|
||||
........#..#.#........#..#..#..
|
||||
#..........#......#............
|
||||
..##.......#..#.......#....#...
|
||||
.#........#..#..#.#.......##...
|
||||
................#..............
|
||||
#.................#...........#
|
||||
##..#...................#....##
|
||||
#..#....#.....#.#..#.#.#......#
|
||||
#................#.#.#...#.....
|
||||
.............#..#...#..##...#.#
|
||||
#..................#...........
|
||||
..............#..#.....##.....#
|
||||
..#...............#.#..........
|
||||
.....#......#....#..#...#......
|
||||
.#......#...##.....###.....#...
|
||||
...##...##.##....#.#.#..#......
|
||||
....#.#.......#..##....#.##....
|
||||
...#.........#.#.....#...#...##
|
||||
.##.#.........##..#.##..#......
|
||||
.#...#......#......#.........#.
|
||||
.............#.................
|
||||
..........#..............#.....
|
||||
##...........#...#...###....#..
|
||||
....#...............#..........
|
||||
.......####.....#......#.......
|
||||
........#..........#..#........
|
||||
..#.......#..#.................
|
||||
......#.#..##...##....#........
|
||||
.##...#........#...#....#...#..
|
||||
.......................#.......
|
||||
.........##..#..#...#....##...#
|
||||
..#..#...#.....#.........#..#..
|
||||
.......#....#.........#...#..#.
|
||||
.............#.................
|
||||
.....##..#.....###....##.#.....
|
||||
....#.#..#..#.#.....##....#..#.
|
||||
......#..#..............#.##..#
|
||||
..#..#......#.#.........#..#...
|
||||
..........#.#..#....#.....#....
|
||||
.....................#.........
|
||||
...#.....#.......##..#.#.......
|
||||
.....#...#..........###....#.#.
|
||||
......#.....##............#...#
|
||||
.......#..........#.#..#...#..#
|
||||
#...#..#...........#..##..#....
|
||||
.#......#.......##.....#..#....
|
||||
...#..#....#.......##......#...
|
||||
........#.......##...#.......#.
|
||||
.....#........#................
|
||||
......#........#....#..........
|
||||
...#....#....###.........#.#...
|
||||
##..............#......#..#.#..
|
||||
.........##....#........#..#.#.
|
||||
.......#.##.#........#........#
|
||||
.....###..#..#...........#....#
|
||||
.......#....##.......#.#...#...
|
||||
#..............#.#....#..#...#.
|
||||
#..#....#..#.#............#..#.
|
||||
.#...##.#..................#...
|
||||
...#...............##.........#
|
||||
###..............#.#..#.#.#....
|
||||
.#......#.#.....##.......#.....
|
||||
...#.................#.#.......
|
||||
.#...#....#...#..#......#...#..
|
||||
...##....#........#.#.#..#.....
|
||||
..#.....#........#....#.#......
|
||||
...........#.#...#.............
|
||||
......#.....#.....#.........#..
|
||||
.#.##.###...#.##.......#.......
|
||||
.............#....#.......#....
|
||||
..............#...........#....
|
||||
.............#..#.#.....#....#.
|
||||
.......#........##...##..##....
|
||||
..##...#............#..#......#
|
||||
.............#...##.....#......
|
||||
.#...##..##.#.........#.##...#.
|
16
test/day3.krk
Normal file
16
test/day3.krk
Normal file
@ -0,0 +1,16 @@
|
||||
from fileio import open
|
||||
let f = open('test/day3.in')
|
||||
let lines = f.read().split('\n')[:-1]
|
||||
|
||||
def count_trees(lines, x_off, y_off):
|
||||
let modulo = len(lines[0])
|
||||
let x = 0, y = 0, trees = 0
|
||||
while y < len(lines):
|
||||
if lines[y][x % modulo] == '#':
|
||||
trees += 1
|
||||
x += x_off
|
||||
y += y_off
|
||||
return trees
|
||||
|
||||
print "part 1:", count_trees(lines, 3, 1)
|
||||
print "part 2:", count_trees(lines, 1, 1) * count_trees(lines, 3, 1) * count_trees(lines, 5, 1) * count_trees(lines, 7, 1) * count_trees(lines, 1, 2)
|
1096
test/day4.in
Normal file
1096
test/day4.in
Normal file
File diff suppressed because it is too large
Load Diff
79
test/day4.krk
Normal file
79
test/day4.krk
Normal file
@ -0,0 +1,79 @@
|
||||
from fileio import open
|
||||
let f = open('test/day4.in')
|
||||
let lines = f.read().split('\n')[:-1]
|
||||
|
||||
def any(iterator):
|
||||
for v in iterator:
|
||||
if v: return True
|
||||
return False
|
||||
|
||||
def all(iterator):
|
||||
for v in iterator:
|
||||
if not v: return False
|
||||
return True
|
||||
|
||||
def is_digits(val, cnt):
|
||||
if len(val) != cnt:
|
||||
return False
|
||||
return not any([x not in '0123456789' for x in val])
|
||||
|
||||
def check_passport(passport):
|
||||
print "Checking",passport
|
||||
let expected = ['byr','iyr','eyr','hgt','hcl','ecl','pid']
|
||||
if not all([e in passport for e in expected]):
|
||||
print 'Missing expected value'
|
||||
return 0
|
||||
#return 1
|
||||
|
||||
if not is_digits(passport['byr'], 4) or int(passport['byr']) < 1920 or int(passport['byr']) > 2002:
|
||||
print 'Bad birth year'
|
||||
return 0
|
||||
|
||||
if not is_digits(passport['iyr'], 4) or int(passport['iyr']) < 2010 or int(passport['iyr']) > 2020:
|
||||
print 'Bad issue year'
|
||||
return 0
|
||||
|
||||
if not is_digits(passport['eyr'], 4) or int(passport['eyr']) < 2020 or int(passport['eyr']) > 2030:
|
||||
print 'Bad expire year'
|
||||
return 0
|
||||
|
||||
if passport['hgt'][-2:] == 'cm':
|
||||
if not is_digits(passport['hgt'][:-2], 3) or int(passport['hgt'][:-2]) < 150 or int(passport['hgt'][:-2]) > 193:
|
||||
print 'bad height in cm'
|
||||
return 0
|
||||
elif passport['hgt'][-2:] == 'in':
|
||||
if not is_digits(passport['hgt'][:-2], 2) or int(passport['hgt'][:-2]) < 59 or int(passport['hgt'][:-2]) > 76:
|
||||
print 'bad height in inches:', int(passport['hgt'][:-2])
|
||||
return 0
|
||||
else:
|
||||
print 'bad height generally'
|
||||
return 0
|
||||
|
||||
if len(passport['hcl']) != 7 or passport['hcl'][0] != '#' or any([x not in '0123456789abcdef' for x in passport['hcl'][1:]]):
|
||||
print 'bad hair color'
|
||||
return 0
|
||||
|
||||
if passport['ecl'] not in ['amb','blu','brn','gry','grn','hzl','oth']:
|
||||
print 'bad eye color'
|
||||
return 0
|
||||
|
||||
if not is_digits(passport['pid'], 9):
|
||||
print 'bad pid'
|
||||
return 0
|
||||
|
||||
return 1
|
||||
|
||||
let count = 0
|
||||
let passport = {}
|
||||
for line in lines:
|
||||
if not len(line):
|
||||
count += check_passport(passport)
|
||||
passport = {}
|
||||
continue
|
||||
let elems = line.split(' ')
|
||||
for elem in elems:
|
||||
let s = elem.split(':', 1)
|
||||
passport[s[0]] = s[1]
|
||||
|
||||
count += check_passport(passport)
|
||||
print "count =", count
|
18
test/testExtraneousBlanks.krk
Normal file
18
test/testExtraneousBlanks.krk
Normal file
@ -0,0 +1,18 @@
|
||||
class AClass():
|
||||
|
||||
"""A docstring"""
|
||||
|
||||
def foo(self):
|
||||
print "class member foo"
|
||||
|
||||
# What about blank lines?
|
||||
|
||||
def bar(self):
|
||||
print "class member bar"
|
||||
|
||||
# Oh my.
|
||||
|
||||
let a = AClass()
|
||||
a.foo()
|
||||
a.bar()
|
||||
print AClass.__doc__
|
Loading…
Reference in New Issue
Block a user