def test_to_dict(self):
        """Test to_dict method"""

        with self.subTest(msg="dims = (2, 3)"):
            vec = Statevector(np.arange(1, 7), dims=(2, 3))
            target = {"00": 1, "01": 2, "10": 3, "11": 4, "20": 5, "21": 6}
            self.assertDictAlmostEqual(target, vec.to_dict())

        with self.subTest(msg="dims = (11, )"):
            vec = Statevector(np.arange(1, 12), dims=(11, ))
            target = {str(i): i + 1 for i in range(11)}
            self.assertDictAlmostEqual(target, vec.to_dict())

        with self.subTest(msg="dims = (2, 11)"):
            vec = Statevector(np.arange(1, 23), dims=(2, 11))
            target = {}
            for i in range(11):
                for j in range(2):
                    key = f"{i},{j}"
                    target[key] = 2 * i + j + 1
            self.assertDictAlmostEqual(target, vec.to_dict())
Beispiel #2
0
    def test_to_dict(self):
        """Test to_dict method"""

        with self.subTest(msg='dims = (2, 3)'):
            vec = Statevector(np.arange(1, 7), dims=(2, 3))
            target = {'00': 1, '01': 2, '10': 3, '11': 4, '20': 5, '21': 6}
            self.assertDictAlmostEqual(target, vec.to_dict())

        with self.subTest(msg='dims = (11, )'):
            vec = Statevector(np.arange(1, 12), dims=(11, ))
            target = {str(i): i + 1 for i in range(11)}
            self.assertDictAlmostEqual(target, vec.to_dict())

        with self.subTest(msg='dims = (2, 11)'):
            vec = Statevector(np.arange(1, 23), dims=(2, 11))
            target = {}
            for i in range(11):
                for j in range(2):
                    key = '{},{}'.format(i, j)
                    target[key] = 2 * i + j + 1
            self.assertDictAlmostEqual(target, vec.to_dict())