code: def test_ndcg(self):
      name = "ndcg"
      Metric = metrics_dict[name](config)
      self.assertEqual(
          Metric.metric_info(pos_idx, pos_len).tolist(),
          np.array(
              [
                  [0, 0, 0],
                  [1, 1, 1],
                  [
                      1,
                      (
                          1
                          / np.log2(2)
                          / (1 / np.log2(2) + 1 / np.log2(3))
                      ),
                      (
                          (1 / np.log2(2) + 1 / np.log2(4))
                          / (
                              1 / np.log2(2)
                              + 1 / np.log2(3)
                              + 1 / np.log2(4)
                          )
                      ),
                  ],
                  [
                      0,
                      0,
                      (
                          1
                          / np.log2(4)
                          / (1 / np.log2(2) + 1 / np.log2(3))
                      ),
                  ],
              ]
          ).tolist(),
      )
  
file_path: RecBole/tests/metrics/test_topk_metrics.py
imports: import os
  import sys
  import unittest
  import numpy
  from recbole.config import Config
  from recbole.evaluator.register import metrics_dict
label_desc: Use image node_id 2 for calling the TestTopKMetrics obj's underlying member method code with example usage: obj.test_ndcg() without return types