Example #1
0
    def test_repetetive_parameter_setting(self):
        """Test alternate setting of parameters and circuit construction."""
        x = Parameter('x')
        circuit = QuantumCircuit(1)
        circuit.rx(x, 0)

        nlocal = NLocal(1, entanglement_blocks=circuit, reps=3, insert_barriers=True)
        with self.subTest(msg='immediately after initialization'):
            self.assertEqual(len(nlocal.parameters), 3)

        with self.subTest(msg='after circuit construction'):
            self.assertEqual(len(nlocal.parameters), 3)

        q = Parameter('q')
        nlocal.assign_parameters([x, q, q], inplace=True)
        with self.subTest(msg='setting parameter to Parameter objects'):
            self.assertEqual(nlocal.parameters, set({x, q}))

        nlocal.assign_parameters([0, -1], inplace=True)
        with self.subTest(msg='setting parameter to numbers'):
            self.assertEqual(nlocal.parameters, set())
Example #2
0
 def test_reps_setter_when_negative(self):
     """Test to check if setter raises error for reps <=0"""
     nlocal = NLocal(reps=1)
     with self.assertRaises(ValueError):
         nlocal.reps = -1
Example #3
0
 def test_if_reps_is_zero(self):
     """Test to check if error is raised for 0 or negative value of reps"""
     with self.assertRaises(ValueError):
         _ = NLocal(reps=-1)
Example #4
0
 def test_if_reps_is_npint64(self):
     """Equality test for reps with int value and np.int64 value"""
     self.assertEqual(NLocal(reps=3), NLocal(reps=np.int64(3)))
Example #5
0
 def test_if_reps_is_float(self):
     """Test to check if proper error is raised for float value of reps"""
     with self.assertRaises(TypeError):
         _ = NLocal(reps=5.6)
Example #6
0
 def test_if_reps_is_str(self):
     """Test to check if proper error is raised for str value of reps"""
     with self.assertRaises(TypeError):
         _ = NLocal(reps="3")