code: def test_no_drift_object_detection(coco_visiondata_train):
      # Arrange
      check = PredictionDrift(
          categorical_drift_method="PSI", numerical_drift_method="EMD"
      )
  
      # Act
      result = check.run(coco_visiondata_train, coco_visiondata_train)
  
      # Assert
      assert_that(
          result.value,
          has_entries(
              {
                  "Samples Per Class": has_entries(
                      {"Drift score": 0, "Method": equal_to("PSI")}
                  ),
                  "Bounding Box Area (in pixels)": has_entries(
                      {
                          "Drift score": 0,
                          "Method": equal_to("Earth Mover's Distance"),
                      }
                  ),
                  "Number of Bounding Boxes Per Image": has_entries(
                      {
                          "Drift score": 0,
                          "Method": equal_to("Earth Mover's Distance"),
                      }
                  ),
              }
          ),
      )
      assert_that(result.display, has_length(greater_than(0)))
  
file_path: deepchecks/tests/vision/checks/model_evaluation/prediction_drift_test.py
imports: from hamcrest import assert_that, calling, close_to, equal_to, greater_than, has_entries, has_length, raises
  from deepchecks.core.errors import NotEnoughSamplesError
  from deepchecks.vision.checks import PredictionDrift
  from tests.base.utils import equal_condition_result
label_desc: Use image node_id 2 for calling a global function with example usage: test_no_drift_object_detection(coco_visiondata_train) without return types