code: def test_shape(self, num_desc1, num_desc2, dim, device):
      desc1 = torch.rand(num_desc1, dim, device=device)
      desc2 = torch.rand(num_desc2, dim, device=device)
  
      dists, idxs = match_snn(desc1, desc2)
      assert idxs.shape[1] == 2
      assert dists.shape[1] == 1
      assert idxs.shape[0] == dists.shape[0]
      assert dists.shape[0] <= num_desc1
  
imports: import pytest
  import torch
  from torch.autograd import gradcheck
  import kornia.testing
  from kornia.feature.integrated import LightGlueMatcher
  from kornia.feature.laf import laf_from_center_scale_ori
  from kornia.feature.matching import DescriptorMatcher, GeometryAwareDescriptorMatcher, match_adalam, match_fginn, match_mnn, match_nn, match_smnn, match_snn
  from kornia.testing import assert_close
label_desc: Use image node_id 1 for calling the TestMatchSNN obj's underlying member method code with example usage: obj.test_shape(num_desc1, num_desc2, dim, device) without return types