code: def test_exception(self, batch_size, device, dtype):
      src = torch.rand(batch_size, 5, 2)
      kernel = torch.zeros_like(src)
      affine = torch.zeros(batch_size, 3, 2)
  
      with pytest.raises(TypeError):
          assert kornia.geometry.transform.warp_points_tps(
              src.numpy(), src, kernel, affine
          )
  
      with pytest.raises(TypeError):
          assert kornia.geometry.transform.warp_points_tps(
              src, src.numpy(), kernel, affine
          )
  
      with pytest.raises(TypeError):
          assert kornia.geometry.transform.warp_points_tps(
              src, src, kernel.numpy(), affine
          )
  
      with pytest.raises(TypeError):
          assert kornia.geometry.transform.warp_points_tps(
              src, src, kernel, affine.numpy()
          )
  
      with pytest.raises(ValueError):
          src_bad = torch.rand(batch_size, 5)
          assert kornia.geometry.transform.warp_points_tps(
              src_bad, src, kernel, affine
          )
  
      with pytest.raises(ValueError):
          src_bad = torch.rand(batch_size, 5)
          assert kornia.geometry.transform.warp_points_tps(
              src, src_bad, kernel, affine
          )
  
      with pytest.raises(ValueError):
          kernel_bad = torch.rand(batch_size, 5)
          assert kornia.geometry.transform.warp_points_tps(
              src, src, kernel_bad, affine
          )
  
      with pytest.raises(ValueError):
          affine_bad = torch.rand(batch_size, 3)
          assert kornia.geometry.transform.warp_points_tps(
              src, src, kernel, affine_bad
          )
  
imports: import pytest
  import torch
  from torch.autograd import gradcheck
  import kornia
  from kornia.testing import assert_close
  from kornia.utils._compat import torch_version_ge
label_desc: Use image node_id 3 for calling the TestWarpPoints obj's underlying member method code with example usage: obj.test_exception(batch_size, device, dtype) without return types