def METHOD_NAME(self, input_param, input_data, expected_val):
    loss_fn = DiceLoss(**input_param)
    ignite_metric = IgniteMetric(loss_fn=loss_fn, output_transform=from_engine(["pred", "label"]))
    def _val_func(engine, batch):
        pass
    engine = Engine(_val_func)
    ignite_metric.attach(engine=engine, name="ignite_dice_loss")
    y_pred = input_data["input"]
    y = input_data["target"]
    engine.state.output = {"pred": y_pred, "label": y}
    engine.fire_event(Events.ITERATION_COMPLETED)
    engine.fire_event(Events.EPOCH_COMPLETED)
    assert_allclose(engine.state.metrics["ignite_dice_loss"], expected_val, atol=1e-4, rtol=1e-4, type_test=False)