def test_vartype_dimod_smoke(self): StructuredSolver.reformat_parameters('SPIN', {}, {}) StructuredSolver.reformat_parameters('BINARY', {}, {}) StructuredSolver.reformat_parameters(dimod.BINARY, {}, {}) StructuredSolver.reformat_parameters(dimod.SPIN, {}, {}) with self.assertRaises(ValueError): StructuredSolver.reformat_parameters("INTEGER", {}, {})
def test_initial_states(self): doc = {'initial_state': {0: 0, 4: 1}} self.assertEqual(StructuredSolver.reformat_parameters('ising', doc, dict(num_qubits=9)), dict(initial_state=[-1, 3, 3, 3, 1, 3, 3, 3, 3])) self.assertEqual(StructuredSolver.reformat_parameters('qubo', doc, dict(num_qubits=9)), dict(initial_state=[0, 3, 3, 3, 1, 3, 3, 3, 3])) if dimod: self.assertEqual(StructuredSolver.reformat_parameters('SPIN', doc, dict(num_qubits=9)), dict(initial_state=[-1, 3, 3, 3, 1, 3, 3, 3, 3])) self.assertEqual(StructuredSolver.reformat_parameters('BINARY', doc, dict(num_qubits=9)), dict(initial_state=[0, 3, 3, 3, 1, 3, 3, 3, 3])) self.assertEqual(doc, {'initial_state': {0: 0, 4: 1}})
def test_initial_states_sequence(self): doc = {'initial_state': [-1, 3, 3, 3, 1, 3, 3, 3, 3]} self.assertEqual(StructuredSolver.reformat_parameters('ising', doc, dict(num_qubits=9)), dict(initial_state=[-1, 3, 3, 3, 1, 3, 3, 3, 3]))
def test_initial_states_inplace(self): doc = {'initial_state': {0: 0, 4: 1}} StructuredSolver.reformat_parameters('ising', doc, dict(num_qubits=9), inplace=True) self.assertEqual(doc, dict(initial_state=[-1, 3, 3, 3, 1, 3, 3, 3, 3]))
def test_empty(self): self.assertEqual(StructuredSolver.reformat_parameters('ising', {}, {}), {})
def test_vartype_smoke(self): for vt in StructuredSolver._handled_problem_types: StructuredSolver.reformat_parameters(vt, {}, {}) with self.assertRaises(ValueError): StructuredSolver.reformat_parameters('not a type', {}, {})