docstr: Test that isin works as expected for mixed dtype input.
docstr_tok: ["Test","that","isin","works","as","expected","for","mixed","dtype","input","."]
code: def test_isin_mixed_dtype(self, dtype1, dtype2, kind):
      """Test that isin works as expected for mixed dtype input."""
      is_dtype2_signed = np.issubdtype(dtype2, np.signedinteger)
      ar1 = np.array([0, 0, 1, 1], dtype=dtype1)
  
      if is_dtype2_signed:
          ar2 = np.array([-128, 0, 127], dtype=dtype2)
      else:
          ar2 = np.array([127, 0, 255], dtype=dtype2)
  
      expected = np.array([True, True, False, False])
  
      expect_failure = kind == "table" and any(
          (
              dtype1 == np.int8 and dtype2 == np.int16,
              dtype1 == np.int16 and dtype2 == np.int8,
          )
      )
  
      if expect_failure:
          with pytest.raises(RuntimeError, match="exceed the maximum"):
              isin(ar1, ar2, kind=kind)
      else:
          assert_array_equal(isin(ar1, ar2, kind=kind), expected)
  
imports: import numpy
  from numpy import ediff1d, intersect1d, setxor1d, union1d, setdiff1d, unique, isin
  from numpy.exceptions import AxisError
  from numpy.testing import assert_array_equal, assert_equal, assert_raises, assert_raises_regex
  import pytest
label_desc: Use image node_id 16 for calling the TestSetOps obj's underlying member method code with example usage: obj.test_isin_mixed_dtype(dtype1, dtype2, kind) without return types