Skip to content

Commit

Permalink
adding unit test case for testing gen_resource_estimate
Browse files Browse the repository at this point in the history
  • Loading branch information
JonhasSC committed Mar 20, 2024
1 parent bb44995 commit f977982
Showing 1 changed file with 22 additions and 2 deletions.
24 changes: 22 additions & 2 deletions tests/utils_test.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import cirq
import unittest
import numpy as np
from qca.utils.utils import count_gates, count_T_gates, get_T_depth, get_T_depth_wire
from qca.utils.utils import count_gates, count_T_gates, get_T_depth, get_T_depth_wire, gen_resource_estimate
from pyLIQTR.gate_decomp.cirq_transforms import clifford_plus_t_direct_transform

class UtilsTest(unittest.TestCase):
Expand Down Expand Up @@ -52,7 +52,27 @@ def test_clifford_info(self):
circ_depth = len(circ_cpt)
self.assertEqual(circ_depth, 5)
self.assertEqual(clifford_count, 12)


def test_get_resource_estimate(self):
qubits = [cirq.LineQubit(i) for i in range(4)]

layer_rz = [cirq.Rz(rads = np.pi/4).on(qubit) for qubit in qubits]
layer_rx = [cirq.Rx(rads = np.pi/4).on(qubit) for qubit in qubits]
layer_measurement = [cirq.measure(qubit) for qubit in qubits]
circuit = cirq.Circuit()
circuit.append(layer_rz)
circuit.append(layer_rx)
circuit.append(layer_measurement)
circ_cpt = clifford_plus_t_direct_transform(circuit)
circ_estimate = gen_resource_estimate(circ_cpt)
correct_estimate = {'num_qubits': 4,
't_count': 8,
't_depth': 2,
'max_t_depth_wire': 2,
'gate_count': 20,
'clifford_count': 12,
'circuit_depth': 5}
self.assertEqual(circ_estimate, correct_estimate)

if __name__ == '__main__':
unittest.main()

0 comments on commit f977982

Please sign in to comment.