# Path: openfermioncirq/_compat_test.py
# def deprecated_test(test: Callable) -> Callable:
#     """Marks a test as using deprecated functionality.
# 
#     Ensures the test is executed within the `pytest.deprecated_call()` context.
# 
#     Args:
#         test: The test.
# 
#     Returns:
#         The decorated test.
#     """
# 
#     @functools.wraps(test)
#     def decorated_test(*args, **kwargs) -> Any:
#         with pytest.deprecated_call():
#             test(*args, **kwargs)
# 
#     return decorated_test


import warnings
import numpy as np
import sympy
import cirq
import pytest
import openfermioncirq as ofc
from cirq.testing import EqualsTester
from openfermioncirq._compat_test import deprecated_test
def test_cxxyy_repr():
    assert repr(ofc.CXXYY) == 'CXXYY'
    assert repr(ofc.CXXYY**0.5) == 'CXXYY**0.5'


@deprecated_test
def test_cyxxy_eq():
    eq = EqualsTester()

    eq.add_equality_group(ofc.CYXXY**-0.5,
                          ofc.CYXXYPowGate(exponent=3.5),
                          ofc.CYXXYPowGate(exponent=-0.5))

    eq.add_equality_group(ofc.CYXXYPowGate(exponent=1.5),
                          ofc.CYXXYPowGate(exponent=-2.5))

    eq.make_equality_group(lambda: ofc.CYXXYPowGate(exponent=0))
    eq.make_equality_group(lambda: ofc.CYXXYPowGate(exponent=0.5))


@deprecated_test
@pytest.mark.parametrize('exponent', [1.0, 0.5, 0.25, 0.1, 0.0, -0.5])
def test_cyxxy_decompose(exponent):
    cirq.testing.assert_decompose_is_consistent_with_unitary(
            ofc.CYXXY**exponent)


@deprecated_test
def test_cyxxy_repr():
    assert repr(ofc.CYXXYPowGate(exponent=1)) == 'CYXXY'

# Path: openfermioncirq/_compat_test.py
# def deprecated_test(test: Callable) -> Callable:
#     """Marks a test as using deprecated functionality.
# 
#     Ensures the test is executed within the `pytest.deprecated_call()` context.
# 
#     Args:
#         test: The test.
# 
#     Returns:
#         The decorated test.
#     """
# 
#     @functools.wraps(test)
#     def decorated_test(*args, **kwargs) -> Any:
#         with pytest.deprecated_call():
#             test(*args, **kwargs)
# 
#     return decorated_test


# Path: openfermioncirq/gates/three_qubit_gates_test.py
import warnings
import numpy as np
import sympy
import cirq
import pytest
import openfermioncirq as ofc
from cirq.testing import EqualsTester
from openfermioncirq._compat_test import deprecated_test

def test_cxxyy_repr():
    assert repr(ofc.CXXYY) == 'CXXYY'
    assert repr(ofc.CXXYY**0.5) == 'CXXYY**0.5'


@deprecated_test
def test_cyxxy_eq():
    eq = EqualsTester()

    eq.add_equality_group(ofc.CYXXY**-0.5,
                          ofc.CYXXYPowGate(exponent=3.5),
                          ofc.CYXXYPowGate(exponent=-0.5))

    eq.add_equality_group(ofc.CYXXYPowGate(exponent=1.5),
                          ofc.CYXXYPowGate(exponent=-2.5))

    eq.make_equality_group(lambda: ofc.CYXXYPowGate(exponent=0))
    eq.make_equality_group(lambda: ofc.CYXXYPowGate(exponent=0.5))


@deprecated_test
@pytest.mark.parametrize('exponent', [1.0, 0.5, 0.25, 0.1, 0.0, -0.5])
def test_cyxxy_decompose(exponent):
    cirq.testing.assert_decompose_is_consistent_with_unitary(
            ofc.CYXXY**exponent)


@deprecated_test
def test_cyxxy_repr():
    assert repr(ofc.CYXXYPowGate(exponent=1)) == 'CYXXY'

    assert repr(ofc.CYXXYPowGate(exponent=0.5)) == 'CYXXY**0.5'