code: def test_nan_nan(self):
      # Also test that nan !=0 and nan != nan.
      x = scalar()
      mode = get_default_mode()
      if isinstance(mode, pytensor.compile.debugmode.DebugMode):
          # Disable the check preventing usage of NaN / Inf values.
          # We first do a copy of the mode to avoid side effects on other tests.
          mode = copy(mode)
          mode.check_isfinite = False
      f = pytensor.function([x], eq(x, np.nan), mode=mode)
  
      assert f(0) == 0
      assert f(np.nan) == 0
  
imports: from copy import copy
  import numpy
  import pytest
  from numpy.testing import assert_array_equal, assert_equal, assert_string_equal
  import pytensor
  import tests.unittest_tools
  from pytensor.compile import DeepCopyOp
  from pytensor.compile.mode import get_default_mode
  from pytensor.graph.basic import Constant, equal_computations
  from pytensor.tensor import get_vector_length
  from pytensor.tensor.basic import constant
  from pytensor.tensor.elemwise import DimShuffle
  from pytensor.tensor.math import dot, eq, matmul
  from pytensor.tensor.shape import Shape
  from pytensor.tensor.subtensor import AdvancedSubtensor, Subtensor, inc_subtensor, set_subtensor
  from pytensor.tensor.type import TensorType, cscalar, dmatrix, dscalar, dvector, iscalar, ivector, matrices, matrix, scalar, tensor3
  from pytensor.tensor.type_other import MakeSlice, NoneConst
  from pytensor.tensor.variable import DenseTensorConstant, DenseTensorVariable, TensorConstant, TensorVariable
  from tests.tensor.utils import random
label_desc: Use image node_id 2 for calling the TestTensorConstantSignature obj's underlying member method code with example usage: obj.test_nan_nan() without return types