def test_position_xy_out_of_range(self): self.testboard = gologic.board(19) with self.assertRaises(gologic.position_xy_out_of_range_error): self.testboard.add_stone((-1,0),1,15) with self.assertRaises(gologic.position_xy_out_of_range_error): self.testboard.add_stone((5,-1),1,15) with self.assertRaises(gologic.position_xy_out_of_range_error): self.testboard.add_stone((19,0),1,15) with self.assertRaises(gologic.position_xy_out_of_range_error): self.testboard.add_stone((5,19),1,15)
def test_am_i_alive(self): self.testboard = gologic.board(13) self.testgroup = gologic.group((3,3),0) assert self.testgroup.am_i_alive(self.testboard.grid) == True, "group should have more than 0 liberties" self.testgroup2 = gologic.group((0,0),0) self.testboard.grid[(1,0)] = gologic.stone(1,2) self.testboard.grid[(0,1)] = gologic.stone(1,3) assert self.testgroup2.am_i_alive(self.testboard.grid) == False, "group should have 0 liberties" self.testgroup3 = gologic.group((10,10),0) self.testboard.grid[(11,10)] = gologic.stone(1,2) self.testboard.grid[(9,10)] = gologic.stone(1,3) self.testboard.grid[(10,11)] = gologic.stone(1,4) self.testboard.grid[(10,9)] = gologic.stone(1,5) assert self.testgroup3.am_i_alive(self.testboard.grid) == False, "group should have 0 liberties"
def test_position_occupied(self): self.testboard = gologic.board(19) with self.assertRaises(gologic.position_occupied_error): self.testboard.add_stone((0,0),1,15) self.testboard.add_stone((0,0),0,16)
def test_bad_board_size(self): with self.assertRaises(gologic.bad_board_size_error): self.testboard = gologic.board(-5)
def test_new_board(self): self.testboard = gologic.board(19) assert self.testboard.grid[(0,0)] == None assert self.testboard.grid[(18,18)] == None