code: def test_box_type_input(self):
      assigner = DynamicSoftLabelAssigner(
          soft_center_radius=3.0, topk=1, iou_weight=3.0
      )
      pred_instances = InstanceData(
          bboxes=torch.Tensor([[23, 23, 43, 43], [4, 5, 6, 7]]),
          scores=torch.FloatTensor([[0.2], [0.8]]),
          priors=torch.Tensor([[30, 30, 8, 8], [4, 5, 6, 7]]),
      )
      gt_instances = InstanceData(
          bboxes=HorizontalBoxes(torch.Tensor([[23, 23, 43, 43]])),
          labels=torch.LongTensor([0]),
      )
      assign_result = assigner.assign(
          pred_instances=pred_instances, gt_instances=gt_instances
      )
  
      expected_gt_inds = torch.LongTensor([1, 0])
      assert_allclose(assign_result.gt_inds, expected_gt_inds)
  
file_path: mmdetection/tests/test_models/test_task_modules/test_assigners/test_dynamic_soft_label_assigner.py
imports: from unittest import TestCase
  import torch
  from mmengine.structures import InstanceData
  from mmengine.testing import assert_allclose
  from mmdet.models.task_modules.assigners import DynamicSoftLabelAssigner
  from mmdet.structures.bbox import HorizontalBoxes
label_desc: Use image node_id 4 for calling the TestDynamicSoftLabelAssigner obj's underlying member method code with example usage: obj.test_box_type_input() without return types