コード例 #1
0
 def get_wet_squares_test(self):
     sp = Level1Sprinkler()
     sp.setPosition((10, 10))
     istrue(sp.getIsWetSquare((9, 10)))
     istrue(sp.getIsWetSquare((10, 11)))
     istrue(sp.getIsWetSquare((11, 10)))
     istrue(sp.getIsWetSquare((10, 9)))
コード例 #2
0
 def get_all_wet_squares_test(self):
     sp = Level1Sprinkler()
     sp.setPosition((10, 10))
     allWetSquares = sp.getAllWetSquares()
     equals(4, len(allWetSquares))
     equals((9, 10), allWetSquares[0])
     equals((10, 11), allWetSquares[1])
     equals((11, 10), allWetSquares[2])
     equals((10, 9), allWetSquares[3])
コード例 #3
0
 def test_place_2_sprinklers_same_spot(self):
     field = Field([
         ["X", "X", "X"],
         ["X", "X", "X"],
         ["X", "X", "X"]
     ])
     sprinkler = Level1Sprinkler()
     sprinkler2 = Level1Sprinkler()
     field.placeSprinkler(sprinkler, (0, 1))
     field.placeSprinkler(sprinkler2, (0, 1))
     equals(FieldValue.wet, field.field[0][0])
     equals(FieldValue.available, field.field[1][0])
     equals(FieldValue.available, field.field[2][0])
     equals(FieldValue.sprinkler, field.field[0][1])
     equals(FieldValue.wet, field.field[1][1])
     equals(FieldValue.available, field.field[2][1])
     equals(FieldValue.wet, field.field[0][2])
     equals(FieldValue.available, field.field[1][2])
     equals(FieldValue.available, field.field[2][2])
     equals(1, len(field.sprinklers))
     equals(sprinkler, field.sprinklers[0])
コード例 #4
0
 def test_place_2_sprinklers_different_spots(self):
     field = Field([
         ["X", "X", "X"],
         ["X", "X", "X"],
         ["X", "X", "X"]
     ])
     sprinkler = Level1Sprinkler()
     sprinkler2 = Level1Sprinkler()
     field.placeSprinkler(sprinkler, (0, 1))
     field.placeSprinkler(sprinkler2, (2, 0))
     equals(FieldValue.wet, field.field[0][0])
     equals(FieldValue.wet, field.field[1][0])
     equals(FieldValue.sprinkler, field.field[2][0])
     equals(FieldValue.sprinkler, field.field[0][1])
     equals(FieldValue.wet, field.field[1][1])
     equals(FieldValue.wet, field.field[2][1])
     equals(FieldValue.wet, field.field[0][2])
     equals(FieldValue.available, field.field[1][2])
     equals(FieldValue.available, field.field[2][2])
     equals(2, len(field.sprinklers))
     istrue(sprinkler in field.sprinklers)
     istrue(sprinkler2 in field.sprinklers)
コード例 #5
0
 def test_clone_field(self):
     field = Field([
         [" ", "X"],
         ["X", "X"]
     ])
     field.placeSprinkler(Level1Sprinkler(), (1, 1))
     field2 = field.clone()
     equals(2, len(field2.field))
     equals(2, len(field2.field[0]))
     equals(2, len(field2.field[1]))
     equals(FieldValue.unavailable, field2.field[0][0])
     equals(FieldValue.wet, field2.field[1][0])
     equals(FieldValue.wet, field2.field[0][1])
     equals(FieldValue.sprinkler, field2.field[1][1])
     notequals(field, field2)
     notequals(field.sprinklers, field2.sprinklers)
コード例 #6
0
 def test_place_1_sprinkler_on_unavailable(self):
     field = Field([
         [" ", "X", "X"],
         ["X", "X", "X"],
         ["X", "X", "X"]
     ])
     sprinkler = Level1Sprinkler()
     field.placeSprinkler(sprinkler, (0, 0))
     equals(FieldValue.unavailable, field.field[0][0])
     equals(FieldValue.available, field.field[1][0])
     equals(FieldValue.available, field.field[2][0])
     equals(FieldValue.available, field.field[0][1])
     equals(FieldValue.available, field.field[1][1])
     equals(FieldValue.available, field.field[2][1])
     equals(FieldValue.available, field.field[0][2])
     equals(FieldValue.available, field.field[1][2])
     equals(FieldValue.available, field.field[2][2])
     equals(0, len(field.sprinklers))
コード例 #7
0
 def set_position_test(self):
     sp = Level1Sprinkler()
     sp.setPosition((5, 5))
     equals((5, 5), sp.getPosition())