def METHOD_NAME(self):
    """
    When a signal is connected
        When multiple functions are registered for that signal
            We create a span whenever that signal is sent
    """
    # Our signal handlers
    request_started_a = self.signal_function("request_started_a")
    request_started_b = self.signal_function("request_started_b")
    flask.request_started.connect(request_started_a, self.app)
    flask.request_started.connect(request_started_b, self.app)
    try:
        flask.request_started.send(self.app)
    finally:
        # DEV: There is a bug in `blinker.Signal.disconnect` :(
        flask.request_started.receivers.clear()
    # Ensure our handlers were called only once
    request_started_a.assert_called_once_with(self.app)
    request_started_b.assert_called_once_with(self.app)
    # Assert number of spans created
    spans = self.get_spans()
    self.assertEqual(len(spans), 2)
    # Assert the span that was created
    span_a = spans[0]
    self.assertEqual(span_a.service, "flask")
    self.assertEqual(span_a.name, "tests.contrib.flask.request_started_a")
    self.assertEqual(span_a.resource, "tests.contrib.flask.request_started_a")
    self.assertEqual(
        set(span_a.get_tags().keys()),
        set(["flask.signal", "runtime-id", "_dd.p.dm", "component", "language", "_dd.base_service"]),
    )
    self.assertEqual(span_a.get_tag("flask.signal"), "request_started")
    # Assert the span that was created
    span_b = spans[1]
    self.assertEqual(span_b.service, "flask")
    self.assertEqual(span_b.name, "tests.contrib.flask.request_started_b")
    self.assertEqual(span_b.resource, "tests.contrib.flask.request_started_b")
    self.assertEqual(
        set(span_b.get_tags().keys()),
        set(["flask.signal", "runtime-id", "_dd.p.dm", "component", "language", "_dd.base_service"]),
    )
    self.assertEqual(span_b.get_tag("flask.signal"), "request_started")