コード例 #1
0
    def test_MoveUp(self):
        tab = np.array(
            [[2,2,2,0,0,0],
             [2,0,0,2,2,0],
             [0,2,0,2,0,2],
             [0,0,2,0,2,2]]
        )
        target = np.array(
            [[3,3,3,3,3,3],
             [0,0,0,0,0,0],
             [0,0,0,0,0,0],
             [0,0,0,0,0,0]]
        )
        grid = GameGrid(0, 0, tab)
        score, has_moved = grid.moveUp()
        self.assertTrue(array2DEquals(grid.matrix, target), "\n" + str(grid.matrix) + "\n" + str(target))
        self.assertTrue(has_moved)
        self.assertEqual(48, score)

        tab = np.array(
            [[2,2,2,3,0,0],
             [2,3,0,2,2,3],
             [3,2,3,2,3,2],
             [0,3,2,3,2,2]]
        )
        target = np.array(
            [[3,2,2,3,2,3],
             [3,3,3,3,3,3],
             [0,2,2,3,2,0],
             [0,3,0,0,0,0]]
        )
        grid = GameGrid(0, 0, tab)
        score, has_moved = grid.moveUp()
        self.assertTrue(array2DEquals(grid.matrix, target), "\n" + str(grid.matrix) + "\n" + str(target))
        self.assertTrue(has_moved)
        self.assertEqual(24, score)

        tab = np.array(
            [[2,2,0,3],
             [2,0,2,0],
             [0,3,0,2],
             [2,2,3,2]]
        )
        target = np.array(
            [[3,2,2,3],
             [2,3,3,3],
             [0,2,0,0],
             [0,0,0,0]]
        )

        grid = GameGrid(0, 0, tab)
        score, has_moved = grid.moveUp()
        self.assertTrue(array2DEquals(grid.matrix, target), "\n" + str(grid.matrix) + "\n" + str(target))
        self.assertTrue(has_moved)
        self.assertEqual(16, score)
コード例 #2
0
    def test_add_random_tile(self):

        tab = np.array(
            [[0,0,0,0],
             [0,0,0,0],
             [0,0,0,0],
             [0,0,0,0]]
        )
        grid = GameGrid(0, 0, tab)
        grid.add_random_tile()
        self.assertTrue(grid.matrix.sum() > 0)

        tab = np.array(
            [[2,2,2,2],
             [2,2,2,2],
             [2,2,2,2],
             [2,2,2,2]]
        )
        grid = GameGrid(0, 0, tab)
        grid.add_random_tile()
        self.assertTrue(array2DEquals(tab, grid.matrix))

        tab = np.array(
            [[1,1,1,1],
             [1,1,1,1],
             [1,1,1,1],
             [1,1,1,1]]
        )
        for row in range(4):
            for column in range(4):
                grid = GameGrid(0, 0, tab)
                grid.matrix[row, column] = 0
                grid.add_random_tile()
                self.assertTrue(grid.matrix.sum() > 15)
コード例 #3
0
    def test_ArrayDEquals(self):
        a = np.array(
            [[0,0,0],
             [0,0,0]]
        )
        b = np.array(
            [[0,0],
             [0,0]]
        )
        self.assertFalse(array2DEquals(a, b))

        b = np.array(
            [[0,0,0],
             [0,0,0],
             [0,0,0]]
        )
        self.assertFalse(array2DEquals(a, b))

        b = np.array(
            [[0,0,0],
             [0,0,0]]
        )
        self.assertTrue(array2DEquals(a, b))

        a = np.array(
            [[1,3,0],
             [0,4,0]]
        )
        b = np.array(
            [[1,3,0],
             [1,4,0]]
        )
        self.assertFalse(array2DEquals(a, b))

        a = np.array(
            [[4,3,0],
             [0,4,0]]
        )
        b = np.array(
            [[1,3,0],
             [0,4,0]]
        )
        self.assertFalse(array2DEquals(a, b))

        a = np.array(
            [[1,3,0],
             [0,4,9]]
        )
        b = np.array(
            [[1,3,0],
             [0,4,0]]
        )
        self.assertFalse(array2DEquals(a, b))

        a = np.array(
            [[1,3,0],
             [0,4,0]]
        )
        b = np.array(
            [[1,3,0],
             [0,4,0]]
        )
        self.assertTrue(array2DEquals(a, b))