Difference between revisions of "Eth1winter pygame test"
From Eth0Wiki
(New page: <pre> def AreaMax(input_field): field_strings = input_field.splitlines() field_strings.reverse() field = [] for line in field_strings: field.append([int(number) for number in l...) |
(So I named these things wrong... and I fixed it) |
||
Line 1: | Line 1: | ||
<pre> | <pre> | ||
− | + | # Standard modules | |
− | + | import sys | |
− | + | import unittest | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | def | + | # Tested module |
− | + | import areamax_whizzrd_rev as areamax | |
− | + | ||
− | + | PATTERN_ONE = """83 17 48 41 50 85 56 98 87 20 38 12 76 11 89 | |
− | + | 27 47 15 38 45 14 79 74 42 85 16 14 41 91 78 | |
− | + | 70 60 82 47 12 82 27 44 42 21 41 25 65 68 11 | |
− | + | 51 59 88 54 17 14 87 81 87 33 68 18 84 40 95 | |
− | + | 52 12 91 66 35 13 43 24 59 23 25 92 67 31 89 | |
− | + | 66 95 53 89 71 13 31 35 25 31 30 89 51 88 22 | |
− | + | 60 11 93 10 45 82 99 11 84 55 13 79 20 65 80 | |
− | + | 70 44 12 49 92 39 32 22 55 58 16 46 69 96 48 | |
+ | 49 52 30 45 68 45 62 85 99 89 43 11 65 52 31 | ||
+ | 13 38 81 96 19 88 14 74 12 47 88 45 93 74 64 | ||
+ | 24 40 46 63 99 35 55 94 41 66 78 66 77 27 96 | ||
+ | 25 62 36 67 36 48 71 34 75 41 21 65 24 48 45 | ||
+ | 16 73 71 80 59 59 25 28 30 57 83 42 89 76 74 | ||
+ | 40 20 96 86 46 87 90 40 55 39 72 92 98 76 37 | ||
+ | 89 99 41 95 56 96 99 83 71 23 10 63 73 94 56""" | ||
+ | |||
+ | PATTERN_TWO = """72 68 28 67 98 20 71 65 43 81 10 90 83 53 19 | ||
+ | 50 62 32 53 79 93 60 84 17 87 92 25 84 86 89 | ||
+ | 56 64 28 73 46 11 22 44 89 60 92 93 17 62 40 | ||
+ | 55 50 53 19 84 54 68 52 26 58 24 86 84 22 16 | ||
+ | 16 45 95 60 33 30 19 22 83 22 87 84 22 60 10 | ||
+ | 87 60 77 54 72 93 60 88 40 18 10 30 85 38 30 | ||
+ | 54 95 55 40 16 61 30 43 44 78 30 94 76 53 89 | ||
+ | 42 44 21 80 46 55 52 69 43 92 48 42 46 78 99 | ||
+ | 87 53 36 50 40 31 26 96 54 19 44 44 56 98 97 | ||
+ | 60 65 70 55 53 38 71 18 38 90 30 97 98 61 13 | ||
+ | 18 28 39 20 81 42 31 13 44 10 20 64 94 27 76 | ||
+ | 27 10 90 86 16 25 31 93 44 82 49 44 78 65 34 | ||
+ | 62 73 84 70 67 63 18 95 74 34 72 65 69 44 61 | ||
+ | 69 28 55 20 19 91 21 90 52 50 40 47 43 60 40 | ||
+ | 83 31 32 53 94 12 75 10 46 78 50 48 32 52 30""" | ||
+ | |||
+ | PATTERN_THREE = """35 68 63 93 97 57 17 36 56 70 95 23 13 88 82 | ||
+ | 78 52 71 47 27 45 80 82 96 89 71 56 75 26 93 | ||
+ | 74 63 49 67 65 90 61 29 49 31 91 85 60 27 13 | ||
+ | 22 49 70 30 71 87 78 48 68 98 89 40 71 24 60 | ||
+ | 42 49 49 69 86 52 23 77 77 95 45 51 58 90 73 | ||
+ | 11 28 86 62 88 47 28 10 99 22 67 54 44 58 17 | ||
+ | 97 54 11 47 78 38 77 79 31 97 12 87 56 23 33 | ||
+ | 63 35 85 29 44 55 40 84 33 18 23 66 60 15 99 | ||
+ | 53 38 75 12 49 69 96 78 89 20 48 12 34 44 40 | ||
+ | 43 82 27 84 58 40 59 24 54 11 87 39 40 99 65 | ||
+ | 47 81 16 61 56 87 62 53 56 80 41 60 73 99 72 | ||
+ | 96 45 64 77 41 34 97 41 99 86 29 84 98 34 69 | ||
+ | 79 17 83 37 73 95 13 65 36 20 74 98 56 41 50 | ||
+ | 47 57 46 17 98 99 25 31 49 72 12 85 67 34 88 | ||
+ | 69 38 59 98 14 73 86 72 22 63 80 47 62 32 38""" | ||
+ | |||
+ | PATTERN_FOUR = """82 54 50 21 43 56 30 82 44 31 37 84 91 96 11 | ||
+ | 77 57 21 32 35 46 52 94 15 73 86 42 32 29 37 | ||
+ | 23 59 32 12 30 83 47 89 94 31 60 89 62 25 32 | ||
+ | 98 36 88 81 76 74 81 86 15 25 55 29 57 54 21 | ||
+ | 17 11 84 17 96 98 77 50 34 47 41 45 75 90 24 | ||
+ | 31 28 14 86 56 16 50 50 80 78 22 66 55 11 23 | ||
+ | 70 43 96 55 71 22 53 76 85 27 45 52 49 52 36 | ||
+ | 82 92 41 67 44 62 72 55 70 78 85 26 29 56 55 | ||
+ | 82 56 91 79 55 84 52 40 49 51 68 14 75 97 51 | ||
+ | 16 28 19 33 81 10 88 94 26 25 96 42 83 10 99 | ||
+ | 11 64 93 84 37 83 45 54 42 41 62 80 72 79 11 | ||
+ | 57 41 28 92 27 26 26 69 65 55 62 94 87 91 14 | ||
+ | 90 12 68 93 55 47 39 92 93 65 74 40 22 98 69 | ||
+ | 34 97 64 39 90 17 82 24 19 33 74 64 47 24 93 | ||
+ | 78 71 83 79 20 79 85 77 53 71 19 78 33 80 67""" | ||
+ | |||
+ | |||
+ | class AreaMaxingTest(unittest.TestCase): | ||
+ | def testPatternOne(self): | ||
+ | e_max, e_coords = 391, (13, 3) | ||
+ | g_max, g_coords = areamax.AreaMax(PATTERN_ONE) | ||
+ | g_coords = tuple(g_coords) | ||
+ | self.assertEqual(g_max, e_max, | ||
+ | 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) | ||
+ | self.assertEqual( | ||
+ | g_coords, e_coords, | ||
+ | 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) | ||
+ | |||
+ | def testPatternTwo(self): | ||
+ | e_max, e_coords = 450, (12, 6) | ||
+ | g_max, g_coords = areamax.AreaMax(PATTERN_TWO) | ||
+ | g_coords = tuple(g_coords) | ||
+ | self.assertEqual(g_max, e_max, | ||
+ | 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) | ||
+ | self.assertEqual( | ||
+ | g_coords, e_coords, | ||
+ | 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) | ||
+ | |||
+ | def testPatternThree(self): | ||
+ | e_max, e_coords = 461, (11, 4) | ||
+ | g_max, g_coords = areamax.AreaMax(PATTERN_THREE) | ||
+ | g_coords = tuple(g_coords) | ||
+ | self.assertEqual(g_max, e_max, | ||
+ | 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) | ||
+ | self.assertEqual( | ||
+ | g_coords, e_coords, | ||
+ | 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) | ||
+ | |||
+ | def testPatternFour(self): | ||
+ | e_max, e_coords = 419, (4, 11) | ||
+ | g_max, g_coords = areamax.AreaMax(PATTERN_FOUR) | ||
+ | g_coords = tuple(g_coords) | ||
+ | self.assertEqual(g_max, e_max, | ||
+ | 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) | ||
+ | self.assertEqual( | ||
+ | g_coords, e_coords, | ||
+ | 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) | ||
+ | |||
+ | if __name__ == '__main__': | ||
+ | unittest.main() | ||
</pre> | </pre> |
Latest revision as of 20:10, 31 January 2009
# Standard modules import sys import unittest # Tested module import areamax_whizzrd_rev as areamax PATTERN_ONE = """83 17 48 41 50 85 56 98 87 20 38 12 76 11 89 27 47 15 38 45 14 79 74 42 85 16 14 41 91 78 70 60 82 47 12 82 27 44 42 21 41 25 65 68 11 51 59 88 54 17 14 87 81 87 33 68 18 84 40 95 52 12 91 66 35 13 43 24 59 23 25 92 67 31 89 66 95 53 89 71 13 31 35 25 31 30 89 51 88 22 60 11 93 10 45 82 99 11 84 55 13 79 20 65 80 70 44 12 49 92 39 32 22 55 58 16 46 69 96 48 49 52 30 45 68 45 62 85 99 89 43 11 65 52 31 13 38 81 96 19 88 14 74 12 47 88 45 93 74 64 24 40 46 63 99 35 55 94 41 66 78 66 77 27 96 25 62 36 67 36 48 71 34 75 41 21 65 24 48 45 16 73 71 80 59 59 25 28 30 57 83 42 89 76 74 40 20 96 86 46 87 90 40 55 39 72 92 98 76 37 89 99 41 95 56 96 99 83 71 23 10 63 73 94 56""" PATTERN_TWO = """72 68 28 67 98 20 71 65 43 81 10 90 83 53 19 50 62 32 53 79 93 60 84 17 87 92 25 84 86 89 56 64 28 73 46 11 22 44 89 60 92 93 17 62 40 55 50 53 19 84 54 68 52 26 58 24 86 84 22 16 16 45 95 60 33 30 19 22 83 22 87 84 22 60 10 87 60 77 54 72 93 60 88 40 18 10 30 85 38 30 54 95 55 40 16 61 30 43 44 78 30 94 76 53 89 42 44 21 80 46 55 52 69 43 92 48 42 46 78 99 87 53 36 50 40 31 26 96 54 19 44 44 56 98 97 60 65 70 55 53 38 71 18 38 90 30 97 98 61 13 18 28 39 20 81 42 31 13 44 10 20 64 94 27 76 27 10 90 86 16 25 31 93 44 82 49 44 78 65 34 62 73 84 70 67 63 18 95 74 34 72 65 69 44 61 69 28 55 20 19 91 21 90 52 50 40 47 43 60 40 83 31 32 53 94 12 75 10 46 78 50 48 32 52 30""" PATTERN_THREE = """35 68 63 93 97 57 17 36 56 70 95 23 13 88 82 78 52 71 47 27 45 80 82 96 89 71 56 75 26 93 74 63 49 67 65 90 61 29 49 31 91 85 60 27 13 22 49 70 30 71 87 78 48 68 98 89 40 71 24 60 42 49 49 69 86 52 23 77 77 95 45 51 58 90 73 11 28 86 62 88 47 28 10 99 22 67 54 44 58 17 97 54 11 47 78 38 77 79 31 97 12 87 56 23 33 63 35 85 29 44 55 40 84 33 18 23 66 60 15 99 53 38 75 12 49 69 96 78 89 20 48 12 34 44 40 43 82 27 84 58 40 59 24 54 11 87 39 40 99 65 47 81 16 61 56 87 62 53 56 80 41 60 73 99 72 96 45 64 77 41 34 97 41 99 86 29 84 98 34 69 79 17 83 37 73 95 13 65 36 20 74 98 56 41 50 47 57 46 17 98 99 25 31 49 72 12 85 67 34 88 69 38 59 98 14 73 86 72 22 63 80 47 62 32 38""" PATTERN_FOUR = """82 54 50 21 43 56 30 82 44 31 37 84 91 96 11 77 57 21 32 35 46 52 94 15 73 86 42 32 29 37 23 59 32 12 30 83 47 89 94 31 60 89 62 25 32 98 36 88 81 76 74 81 86 15 25 55 29 57 54 21 17 11 84 17 96 98 77 50 34 47 41 45 75 90 24 31 28 14 86 56 16 50 50 80 78 22 66 55 11 23 70 43 96 55 71 22 53 76 85 27 45 52 49 52 36 82 92 41 67 44 62 72 55 70 78 85 26 29 56 55 82 56 91 79 55 84 52 40 49 51 68 14 75 97 51 16 28 19 33 81 10 88 94 26 25 96 42 83 10 99 11 64 93 84 37 83 45 54 42 41 62 80 72 79 11 57 41 28 92 27 26 26 69 65 55 62 94 87 91 14 90 12 68 93 55 47 39 92 93 65 74 40 22 98 69 34 97 64 39 90 17 82 24 19 33 74 64 47 24 93 78 71 83 79 20 79 85 77 53 71 19 78 33 80 67""" class AreaMaxingTest(unittest.TestCase): def testPatternOne(self): e_max, e_coords = 391, (13, 3) g_max, g_coords = areamax.AreaMax(PATTERN_ONE) g_coords = tuple(g_coords) self.assertEqual(g_max, e_max, 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) self.assertEqual( g_coords, e_coords, 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) def testPatternTwo(self): e_max, e_coords = 450, (12, 6) g_max, g_coords = areamax.AreaMax(PATTERN_TWO) g_coords = tuple(g_coords) self.assertEqual(g_max, e_max, 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) self.assertEqual( g_coords, e_coords, 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) def testPatternThree(self): e_max, e_coords = 461, (11, 4) g_max, g_coords = areamax.AreaMax(PATTERN_THREE) g_coords = tuple(g_coords) self.assertEqual(g_max, e_max, 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) self.assertEqual( g_coords, e_coords, 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) def testPatternFour(self): e_max, e_coords = 419, (4, 11) g_max, g_coords = areamax.AreaMax(PATTERN_FOUR) g_coords = tuple(g_coords) self.assertEqual(g_max, e_max, 'Wrong maximum. Got %d expected %d.' % (g_max, e_max)) self.assertEqual( g_coords, e_coords, 'Wrong coordinates: expected: %s, got: %s.' % (e_coords, g_coords)) if __name__ == '__main__': unittest.main()