class_docstr: Don't peform any test, but provide the function to test the
  Rop to class that inherit from it.
docstr: If your op is not differentiable(so you can't define Rop)
  test that an error is raised.
docstr_tok: ["If","your","op","is","not","differentiable","(","so","you","ca","n't","define","Rop",")","test","that","an","error","is","raised","."]
code: def check_nondiff_rop(self, y):
      """
      If your op is not differentiable(so you can't define Rop)
      test that an error is raised.
      """
      raised = False
      try:
          tensor.Rop(y, self.x, self.v)
      except ValueError:
          raised = True
      if not raised:
          self.fail(
              (
                  "Op did not raise an error even though the function"
                  " is not differentiable"
              )
          )
  
imports: from __future__ import absolute_import, print_function, division
  import unittest
  from theano.tests import unittest_tools
  from theano import function
  import theano
  from theano import tensor
  import itertools
  import numpy
  from theano.gof import Op, Apply
  from theano.gradient import grad_undefined
  from theano.tests.unittest_tools import SkipTest
  from theano.tensor.signal.pool import Pool
  from theano.tensor.nnet import conv, conv2d
label_desc: Use image node_id 2 for calling the RopLop_checker obj's underlying member method code with example usage: obj.check_nondiff_rop(y) without return types