class_docstr: Unit tests for the batch_transform class
class_docstr_tok: ["Unit","tests","for","the","batch_transform","class"]
docstr: Test that the QNode execution wrapper can be overridden
  if required.
docstr_tok: ["Test","that","the","QNode","execution","wrapper","can","be","overridden","if","required","."]
code: def test_custom_qnode_wrapper(self):
      """Test that the QNode execution wrapper can be overridden
      if required."""
      a = 0.654
      x = 0.543
  
      dev = qml.device("default.qubit", wires=2)
  
      @qml.batch_transform
      def my_transform(tape, a):
          tape1 = tape.copy()
          tape2 = tape.copy()
          return [tape1, tape2], lambda res: a * qml.math.sum(res)
  
      custom_wrapper_called = [
          False
      ]  # use list so can edit by reference
  
      @my_transform.custom_qnode_wrapper
      def qnode_wrapper(
          self, qnode, targs, tkwargs
      ):  # pylint: disable=unused-variable
          wrapper = self.default_qnode_wrapper(qnode, targs, tkwargs)
          assert targs == (a,)
          assert tkwargs == {}
          custom_wrapper_called[0] = True
          return wrapper
  
      @my_transform(a)  # pylint: disable=no-value-for-parameter
      @qml.qnode(dev)
      def circuit(x):
          qml.Hadamard(wires=0)
          qml.RX(x, wires=0)
          return qml.expval(qml.PauliX(0))
  
      circuit(x)
  
      assert custom_wrapper_called[0] is True
  
imports: import functools
  import pytest
  import pennylane
  from pennylane import numpy
label_desc: Use image node_id 19 for calling the TestBatchTransform obj's underlying member method code with example usage: obj.test_custom_qnode_wrapper() and returns: list,  function, wrapper, qml