def METHOD_NAME(self) -> None:
    class MetricEntry(Protocol):
        foo: int
        bar: int
    gauge: InFlightGauge[MetricEntry] = InFlightGauge(
        "test1", "", labels=["test_label"], sub_metrics=["foo", "bar"]
    )
    def handle1(metrics: MetricEntry) -> None:
        metrics.foo += 2
        metrics.bar = max(metrics.bar, 5)
    def handle2(metrics: MetricEntry) -> None:
        metrics.foo += 3
        metrics.bar = max(metrics.bar, 7)
    gauge.register(("key1",), handle1)
    self.assert_dict(
        {
            "test1_total": {("key1",): 1},
            "test1_foo": {("key1",): 2},
            "test1_bar": {("key1",): 5},
        },
        self.get_metrics_from_gauge(gauge),
    )
    gauge.unregister(("key1",), handle1)
    self.assert_dict(
        {
            "test1_total": {("key1",): 0},
            "test1_foo": {("key1",): 0},
            "test1_bar": {("key1",): 0},
        },
        self.get_metrics_from_gauge(gauge),
    )
    gauge.register(("key1",), handle1)
    gauge.register(("key2",), handle2)
    self.assert_dict(
        {
            "test1_total": {("key1",): 1, ("key2",): 1},
            "test1_foo": {("key1",): 2, ("key2",): 3},
            "test1_bar": {("key1",): 5, ("key2",): 7},
        },
        self.get_metrics_from_gauge(gauge),
    )
    gauge.unregister(("key2",), handle2)
    gauge.register(("key1",), handle2)
    self.assert_dict(
        {
            "test1_total": {("key1",): 2, ("key2",): 0},
            "test1_foo": {("key1",): 5, ("key2",): 0},
            "test1_bar": {("key1",): 7, ("key2",): 0},
        },
        self.get_metrics_from_gauge(gauge),
    )