@@ -14,6 +14,7 @@ class SpanPointersCase(NamedTuple):
1414 name : str
1515 event_source : _EventSource
1616 event : dict
17+ dd_botocore_span_pointers : bool
1718 span_pointers : List [_SpanPointerDescription ]
1819
1920 @pytest .mark .parametrize (
@@ -23,12 +24,14 @@ class SpanPointersCase(NamedTuple):
2324 name = "some unsupported event" ,
2425 event_source = _EventSource (EventTypes .UNKNOWN ),
2526 event = {},
27+ dd_botocore_span_pointers = True ,
2628 span_pointers = [],
2729 ),
2830 SpanPointersCase (
2931 name = "empty s3 event" ,
3032 event_source = _EventSource (EventTypes .S3 ),
3133 event = {},
34+ dd_botocore_span_pointers = True ,
3235 span_pointers = [],
3336 ),
3437 SpanPointersCase (
@@ -50,6 +53,7 @@ class SpanPointersCase(NamedTuple):
5053 },
5154 ],
5255 },
56+ dd_botocore_span_pointers = True ,
5357 span_pointers = [
5458 _SpanPointerDescription (
5559 pointer_kind = "aws.s3.object" ,
@@ -59,6 +63,28 @@ class SpanPointersCase(NamedTuple):
5963 ),
6064 ],
6165 ),
66+ SpanPointersCase (
67+ name = "sensible s3 event with dd_botocore_span_pointers disabled" ,
68+ event_source = _EventSource (EventTypes .S3 ),
69+ event = {
70+ "Records" : [
71+ {
72+ "eventName" : "ObjectCreated:Put" ,
73+ "s3" : {
74+ "bucket" : {
75+ "name" : "mybucket" ,
76+ },
77+ "object" : {
78+ "key" : "mykey" ,
79+ "eTag" : "123abc" ,
80+ },
81+ },
82+ },
83+ ],
84+ },
85+ dd_botocore_span_pointers = False ,
86+ span_pointers = [],
87+ ),
6288 SpanPointersCase (
6389 name = "malformed s3 event" ,
6490 event_source = _EventSource (EventTypes .S3 ),
@@ -78,12 +104,14 @@ class SpanPointersCase(NamedTuple):
78104 },
79105 ],
80106 },
107+ dd_botocore_span_pointers = True ,
81108 span_pointers = [],
82109 ),
83110 SpanPointersCase (
84111 name = "empty dynamodb event" ,
85112 event_source = _EventSource (EventTypes .DYNAMODB ),
86113 event = {},
114+ dd_botocore_span_pointers = True ,
87115 span_pointers = [],
88116 ),
89117 SpanPointersCase (
@@ -109,6 +137,7 @@ class SpanPointersCase(NamedTuple):
109137 },
110138 ],
111139 },
140+ dd_botocore_span_pointers = True ,
112141 span_pointers = [
113142 _SpanPointerDescription (
114143 pointer_kind = "aws.dynamodb.item" ,
@@ -139,16 +168,18 @@ class SpanPointersCase(NamedTuple):
139168 },
140169 ],
141170 },
171+ dd_botocore_span_pointers = True ,
142172 span_pointers = [],
143173 ),
144174 ],
145175 ids = lambda test_case : test_case .name ,
146176 )
147- def test_calculate_span_pointers (self , test_case : SpanPointersCase ):
177+ def test_calculate_span_pointers (self , test_case : SpanPointersCase ) -> None :
148178 assert (
149179 calculate_span_pointers (
150180 test_case .event_source ,
151181 test_case .event ,
182+ botocore_add_span_pointers = test_case .dd_botocore_span_pointers ,
152183 )
153184 == test_case .span_pointers
154185 )
0 commit comments