コード例 #1
0
ファイル: test_board_class.py プロジェクト: jasondriver/2048
    def test_board_shift_down(self):
        b = Board()
        b.set_number(0, 0, 2)
        b.set_number(1, 0, 0)
        b.set_number(2, 0, 2)
        b.set_number(3, 0, 4)
        b.shift_board_down()
        self.assertTrue(b.board[0][0] == 0)
        self.assertTrue(b.board[1][0] == 0)
        self.assertTrue(b.board[2][0] == 4)
        self.assertTrue(b.board[3][0] == 4)
        b.set_number(1, 0, 2)
        b.shift_board_down()
        self.assertTrue(b.board[0][0] == 0)
        self.assertTrue(b.board[1][0] == 0)
        self.assertTrue(b.board[2][0] == 2)
        self.assertTrue(b.board[3][0] == 8)
        b.shift_board_down()
        self.assertTrue(b.board[0][0] == 0)
        self.assertTrue(b.board[1][0] == 0)
        self.assertTrue(b.board[2][0] == 2)
        self.assertTrue(b.board[3][0] == 8)

        # test basic shift only
        b.set_board([[2, 0, 0, 0], [0, 2, 0, 0], [0, 0, 2, 0], [0, 0, 0, 2]])
        b.shift_board_down()
        self.assertTrue(b.get_row(0) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(1) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(2) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(3) == [2, 2, 2, 2])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [0, 4, 4, 4], [0, 0, 4, 4], [0, 0, 0, 4]])
        b.shift_board_down()
        self.assertTrue(b.get_row(0) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(1) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(2) == [0, 0, 4, 8])
        self.assertTrue(b.get_row(3) == [4, 8, 8, 8])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [4, 4, 4, 0], [4, 4, 0, 0], [4, 0, 0, 0]])
        b.shift_board_down()
        self.assertTrue(b.get_row(0) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(1) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(2) == [8, 4, 0, 0])
        self.assertTrue(b.get_row(3) == [8, 8, 8, 4])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [4, 4, 0, 4], [0, 4, 4, 0], [0, 0, 4, 0]])
        b.shift_board_down()
        self.assertTrue(b.get_row(0) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(1) == [0, 0, 0, 0])
        self.assertTrue(b.get_row(2) == [0, 4, 4, 0])
        self.assertTrue(b.get_row(3) == [8, 8, 8, 8])
コード例 #2
0
ファイル: test_board_class.py プロジェクト: jasondriver/2048
    def test_board_shift_right(self):
        b = Board()
        b.set_number(0, 0, 2)
        b.set_number(0, 1, 0)
        b.set_number(0, 2, 2)
        b.set_number(0, 3, 4)
        b.shift_board_right()
        self.assertTrue(b.board[0] == [0, 0, 4, 4])
        b.set_row(3, [2, 0, 0, 0])
        b.shift_board_right()
        self.assertTrue(b.get_row(3) == [0, 0, 0, 2])

        # test basic shift only
        b.set_board([[2, 0, 0, 0], [0, 2, 0, 0], [0, 0, 2, 0], [0, 0, 0, 2]])
        b.shift_board_right()
        self.assertTrue(b.get_row(0) == [0, 0, 0, 2])
        self.assertTrue(b.get_row(1) == [0, 0, 0, 2])
        self.assertTrue(b.get_row(2) == [0, 0, 0, 2])
        self.assertTrue(b.get_row(3) == [0, 0, 0, 2])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [0, 4, 4, 4], [0, 0, 4, 4], [0, 0, 0, 4]])
        b.shift_board_right()
        self.assertTrue(b.get_row(0) == [0, 0, 8, 8])
        self.assertTrue(b.get_row(1) == [0, 0, 4, 8])
        self.assertTrue(b.get_row(2) == [0, 0, 0, 8])
        self.assertTrue(b.get_row(3) == [0, 0, 0, 4])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [4, 4, 4, 0], [4, 4, 0, 0], [4, 0, 0, 0]])
        b.shift_board_right()
        self.assertTrue(b.get_row(0) == [0, 0, 8, 8])
        self.assertTrue(b.get_row(1) == [0, 0, 4, 8])
        self.assertTrue(b.get_row(2) == [0, 0, 0, 8])
        self.assertTrue(b.get_row(3) == [0, 0, 0, 4])
        # test shift and merge
        b.set_board([[4, 4, 4, 4], [4, 4, 0, 4], [0, 4, 4, 0], [0, 0, 4, 0]])
        b.shift_board_right()
        self.assertTrue(b.get_row(0) == [0, 0, 8, 8])
        self.assertTrue(b.get_row(1) == [0, 0, 4, 8])
        self.assertTrue(b.get_row(2) == [0, 0, 0, 8])
        self.assertTrue(b.get_row(3) == [0, 0, 0, 4])
コード例 #3
0
ファイル: test_board_class.py プロジェクト: jasondriver/2048
 def test_shift_array(self):
     b = Board()
     b.set_row(3, [2, 2, 4, 4])  # row numb then List
     b.shift_board_right()
     self.assertTrue(b.get_row(3) == [0, 0, 4, 8])
コード例 #4
0
ファイル: test_board_class.py プロジェクト: jasondriver/2048
 def test_set_column(self):
     b = Board()
     b.set_row(1, [4, 3, 2, 1])
     self.assertTrue(b.get_row(1) == [4, 3, 2, 1])
コード例 #5
0
ファイル: test_board_class.py プロジェクト: jasondriver/2048
 def test_constructor(self):
     b = Board()
     self.assertTrue(b.get_row(0) == [0, 0, 0, 0])
     self.assertTrue(b.get_row(1) == [0, 0, 0, 0])
     self.assertTrue(b.get_row(2) == [0, 0, 0, 0])
     self.assertTrue(b.get_row(3) == [0, 0, 0, 0])