class_docstr: Test the expansion of operations without a unitary generator.
class_docstr_tok: ["Test","the","expansion","of","operations","without","a","unitary","generator","."]
docstr: Test that a tape with single-parameter operations with
  unitary generators and non-parametric operations is not touched.
docstr_tok: ["Test","that","a","tape","with","single-parameter","operations","with","unitary","generators","and","non-parametric","operations","is","not","touched","."]
code: def test_expand_multi_par(self):
      """Test that a tape with single-parameter operations with
      unitary generators and non-parametric operations is not touched.
      """
      with qml.queuing.AnnotatedQueue() as q:
          qml.RX(0.2, wires=0)
          qml.Hadamard(0)
          qml.Rot(0.9, 1.2, -0.6, wires=0)
          qml.SingleExcitationPlus(-1.2, wires=[1, 0])
  
      tape = qml.tape.QuantumScript.from_queue(q)
      new_tape = qml.transforms.expand_nonunitary_gen(tape)
      expanded = [
          qml.RZ(0.9, wires=0),
          qml.RY(1.2, wires=0),
          qml.RZ(-0.6, wires=0),
      ]
  
      assert tape.operations[:2] == new_tape.operations[:2]
      assert all(
          exp.name == new.name
          for exp, new in zip(expanded, new_tape.operations[2:5])
      )
      assert all(
          exp.data == new.data
          for exp, new in zip(expanded, new_tape.operations[2:5])
      )
      assert all(
          exp.wires == new.wires
          for exp, new in zip(expanded, new_tape.operations[2:5])
      )
      assert tape.operations[3:] == new_tape.operations[5:]
  
imports: import pytest
  import numpy
  import pennylane
  from pennylane.wires import Wires
label_desc: Use image node_id 2 for calling the TestExpandNonunitaryGen obj's underlying member method code with example usage: obj.test_expand_multi_par() without return types