def METHOD_NAME(self):
    # setup our test app
    @self.app.route("/hi/<name>")
    def hi(name):
        return "hi %s" % name
    self._trace_app_distributed(self.tracer)
    # make a request
    headers = {"x-datadog-trace-id": "123", "x-datadog-parent-id": "456"}
    resp = self.app.get("/hi/dougie", headers=headers)
    assert resp.status_int == 200
    assert compat.to_unicode(resp.body) == u"hi dougie"
    # validate it's traced
    spans = self.pop_spans()
    assert len(spans) == 1
    s = spans[0]
    assert s.name == "bottle.request"
    assert s.service == "bottle-app"
    assert s.resource == "GET /hi/<name>"
    assert_span_http_status_code(s, 200)
    assert s.get_tag("http.method") == "GET"
    assert s.get_tag("component") == "bottle"
    assert s.get_tag("span.kind"), "server"
    # check distributed headers
    assert 123 == s.trace_id
    assert 456 == s.parent_id