def METHOD_NAME(self):
    layer = CenterNetLabelEncoder(
        voxel_size=[0.1, 0.1, 1000],
        max_radius=[8.0, 8.0, 0.0],
        spatial_size=[-20, 20, -20, 20, -20, 20],
        num_classes=2,
        top_k_heatmap=[10, 20],
    )
    box_3d = tf.random.uniform(
        shape=[2, 100, 7], minval=-5, maxval=5, dtype=tf.float32
    )
    box_classes = tf.random.uniform(
        shape=[2, 100], minval=0, maxval=2, dtype=tf.int32
    )
    box_mask = tf.constant(True, shape=[2, 100])
    inputs = {
        "3d_boxes": {
            "boxes": box_3d,
            "classes": box_classes,
            "mask": box_mask,
        }
    }
    output = layer(inputs)
    # # (20 - (-20)) / 0.1 = 400
    self.assertEqual(output["class_1"]["heatmap"].shape, [2, 400, 400])
    self.assertEqual(output["class_2"]["heatmap"].shape, [2, 400, 400])
    self.assertEqual(output["class_1"]["boxes"].shape, [2, 400, 400, 7])
    self.assertEqual(output["class_2"]["boxes"].shape, [2, 400, 400, 7])
    # last dimension only has x, y
    self.assertEqual(output["class_1"]["top_k_index"].shape, [2, 10, 2])
    self.assertEqual(output["class_2"]["top_k_index"].shape, [2, 20, 2])