def METHOD_NAME(self):
    """
    When using a flask.views.MethodView
        We create spans as expected
    """
    class TestView(MethodView):
        def get(self, name):
            return "Hello {}".format(name)
    self.app.add_url_rule("/hello/<name>", view_func=TestView.as_view("hello"))
    res = self.client.get("/hello/flask")
    self.assertEqual(res.status_code, 200)
    self.assertEqual(res.data, b"Hello flask")
    spans = self.get_spans()
    req_span = self.find_span_by_name(spans, "flask.request")
    handler_span = self.find_span_by_name(spans, "tests.contrib.flask.test_views.hello")
    # flask.request
    self.assertEqual(req_span.error, 0)
    self.assertEqual(req_span.get_tag("component"), "flask")
    self.assertEqual(req_span.get_tag("flask.endpoint"), "hello")
    self.assertEqual(req_span.get_tag("flask.url_rule"), "/hello/<name>")
    self.assertEqual(req_span.get_tag("flask.view_args.name"), "flask")
    self.assertEqual(req_span.get_tag("http.method"), "GET")
    assert_span_http_status_code(req_span, 200)
    self.assertEqual(req_span.get_tag(http.URL), "http://localhost/hello/flask")
    # tests.contrib.flask.test_views.hello
    # DEV: We do not add any additional metadata to view spans
    self.assertEqual(handler_span.error, 0)
    self.assertNotEqual(handler_span.parent_id, 0)
    self.assertEqual(handler_span.get_tags(), EXPECTED_METADATA)