File tree Expand file tree Collapse file tree 2 files changed +25
-3
lines changed
instrumentation/opentelemetry-instrumentation-asgi
src/opentelemetry/instrumentation/asgi Expand file tree Collapse file tree 2 files changed +25
-3
lines changed Original file line number Diff line number Diff line change @@ -260,7 +260,8 @@ def get(
260260 return decoded
261261
262262 def keys (self , carrier : dict ) -> typing .List [str ]:
263- return [_key .decode ("utf8" ) for (_key , _value ) in carrier ]
263+ headers = carrier .get ("headers" ) or []
264+ return [_key .decode ("utf8" ) for (_key , _value ) in headers ]
264265
265266
266267asgi_getter = ASGIGetter ()
Original file line number Diff line number Diff line change 1818
1919
2020class TestASGIGetter (TestCase ):
21- def test_get_none (self ):
21+ def test_get_none_empty_carrier (self ):
2222 getter = ASGIGetter ()
2323 carrier = {}
2424 val = getter .get (carrier , "test" )
2525 self .assertIsNone (val )
2626
27+ def test_get_none_empty_headers (self ):
28+ getter = ASGIGetter ()
29+ carrier = {"headers" : []}
30+ val = getter .get (carrier , "test" )
31+ self .assertIsNone (val )
32+
2733 def test_get_ (self ):
2834 getter = ASGIGetter ()
2935 carrier = {"headers" : [(b"test-key" , b"val" )]}
@@ -44,7 +50,22 @@ def test_get_(self):
4450 "Should be case insensitive" ,
4551 )
4652
47- def test_keys (self ):
53+ def test_keys_empty_carrier (self ):
4854 getter = ASGIGetter ()
4955 keys = getter .keys ({})
5056 self .assertEqual (keys , [])
57+
58+ def test_keys_empty_headers (self ):
59+ getter = ASGIGetter ()
60+ keys = getter .keys ({"headers" : []})
61+ self .assertEqual (keys , [])
62+
63+ def test_keys (self ):
64+ getter = ASGIGetter ()
65+ carrier = {"headers" : [(b"test-key" , b"val" )]}
66+ expected_val = ["test-key" ]
67+ self .assertEqual (
68+ getter .keys (carrier ),
69+ expected_val ,
70+ "Should be equal" ,
71+ )
You can’t perform that action at this time.
0 commit comments