docstr: Check that CZ raised to an non-integer power that's not the square root
  results in a controlled PhaseShift.
docstr_tok: ["Check","that","CZ","raised","to","an","non-integer","power","that","'s","not","the","square","root","results","in","a","controlled","PhaseShift","."]
code: def test_cz_general_power(self, n):
      """Check that CZ raised to an non-integer power that's not the square root
      results in a controlled PhaseShift."""
      op_pow = qml.CZ(wires=[0, 1]).pow(n)
  
      assert len(op_pow) == 1
      assert isinstance(op_pow[0], qml.ops.ControlledOp)
      assert isinstance(op_pow[0].base, qml.PhaseShift)
      assert qml.math.allclose(op_pow[0].data[0], np.pi * (n % 2))
  
imports: import copy
  import numpy
  import pytest
  from scipy.linalg import fractional_matrix_power
  from scipy.sparse import csr_matrix
  from scipy.stats import unitary_group
  from gate_data import CY, CZ
  import pennylane
  from pennylane.wires import Wires
  from pennylane.operation import AnyWires
  from pennylane.ops.qubit.matrix_ops import QubitUnitary
label_desc: Use image node_id 4 for calling the TestPowMethod obj's underlying member method code with example usage: obj.test_cz_general_power(n) without return types