コード例 #1
0
    def test_add_tile_to_state_raises_error(self):
        w = 40
        h = 30
        dg = DataGenerator(w, h)
        tiles = np.array([[2, 3], [4, 5]])
        matrix = dg._transform_instance_to_matrix(tiles)

        state = np.copy(matrix[0])

        self.assertRaises(
            ValueError, lambda: DataGenerator.add_tile_to_state(
                state, DataGenerator.tile_to_matrix([4, 5], w, h), (1, 2)))
コード例 #2
0
    def test_add_tile_to_state(self):
        """
        test that tile gets added to matrix at depth[0]
        """
        w = 8
        h = 9
        dg = DataGenerator(w, h)
        tiles = np.array([[2, 3], [2, 1]])
        matrix = dg._transform_instance_to_matrix(tiles)

        self.assertEqual(list(matrix[:, :, 0][0]), [
            1.,
            1.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][1]), [
            1.,
            1.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][2]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][3]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][4]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][5]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][6]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][7]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(matrix[:, :, 0][8]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])

        state = matrix[:, :, 0].copy()
        state, vis = DataGenerator.add_tile_to_state(
            state, DataGenerator.tile_to_matrix([2, 1], w, h), (2, 2))

        self.assertEqual(list(state[0]), [
            1.,
            1.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[1]), [
            1.,
            1.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[2]), [
            0.,
            0.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[3]), [
            0.,
            0.,
            1.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[4]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[5]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[6]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[7]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])
        self.assertEqual(list(state[8]), [
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
            0.,
        ])