class_docstr: Test that the QASM serialization works correctly
  when circuits are created via QNodes.
class_docstr_tok: ["Test","that","the","QASM","serialization","works","correctly","when","circuits","are","created","via","QNodes","."]
docstr: Test that gates not natively supported by QASM, such as the
  rotation gate, are correctly decomposed and serialized.
docstr_tok: ["Test","that","gates","not","natively","supported","by","QASM",",","such","as","the","rotation","gate",",","are","correctly","decomposed","and","serialized","."]
code: def test_rotation_gate_decomposition(self):
      """Test that gates not natively supported by QASM, such as the
      rotation gate, are correctly decomposed and serialized."""
      dev = qml.device("default.qubit", wires=2)
  
      @qml.qnode(dev)
      def qnode():
          qml.Rot(0.3, 0.1, 0.2, wires=1)
          return qml.expval(qml.PauliZ(0))
  
      # construct the qnode circuit
      qnode()
      res = qnode.qtape.to_openqasm(wires=dev.wires)
  
      expected = dedent(
          """\
              OPENQASM 2.0;
              include "qelib1.inc";
              qreg q[2];
              creg c[2];
              rz(0.3) q[1];
              ry(0.1) q[1];
              rz(0.2) q[1];
              measure q[0] -> c[0];
              measure q[1] -> c[1];
              """
      )
  
      assert res == expected
  
imports: from textwrap import dedent
  import numpy
  import pytest
  import pennylane
  from pennylane.wires import Wires
label_desc: Use image node_id 5 for calling the TestQNodeQasmIntegrationTests obj's underlying member method code with example usage: obj.test_rotation_gate_decomposition() and returns: qml