@@ -14,6 +14,7 @@ class SpanPointersCase(NamedTuple):
14
14
name : str
15
15
event_source : _EventSource
16
16
event : dict
17
+ dd_botocore_span_pointers : bool
17
18
span_pointers : List [_SpanPointerDescription ]
18
19
19
20
@pytest .mark .parametrize (
@@ -23,12 +24,14 @@ class SpanPointersCase(NamedTuple):
23
24
name = "some unsupported event" ,
24
25
event_source = _EventSource (EventTypes .UNKNOWN ),
25
26
event = {},
27
+ dd_botocore_span_pointers = True ,
26
28
span_pointers = [],
27
29
),
28
30
SpanPointersCase (
29
31
name = "empty s3 event" ,
30
32
event_source = _EventSource (EventTypes .S3 ),
31
33
event = {},
34
+ dd_botocore_span_pointers = True ,
32
35
span_pointers = [],
33
36
),
34
37
SpanPointersCase (
@@ -50,6 +53,7 @@ class SpanPointersCase(NamedTuple):
50
53
},
51
54
],
52
55
},
56
+ dd_botocore_span_pointers = True ,
53
57
span_pointers = [
54
58
_SpanPointerDescription (
55
59
pointer_kind = "aws.s3.object" ,
@@ -59,6 +63,28 @@ class SpanPointersCase(NamedTuple):
59
63
),
60
64
],
61
65
),
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
+ ),
62
88
SpanPointersCase (
63
89
name = "malformed s3 event" ,
64
90
event_source = _EventSource (EventTypes .S3 ),
@@ -78,12 +104,14 @@ class SpanPointersCase(NamedTuple):
78
104
},
79
105
],
80
106
},
107
+ dd_botocore_span_pointers = True ,
81
108
span_pointers = [],
82
109
),
83
110
SpanPointersCase (
84
111
name = "empty dynamodb event" ,
85
112
event_source = _EventSource (EventTypes .DYNAMODB ),
86
113
event = {},
114
+ dd_botocore_span_pointers = True ,
87
115
span_pointers = [],
88
116
),
89
117
SpanPointersCase (
@@ -109,6 +137,7 @@ class SpanPointersCase(NamedTuple):
109
137
},
110
138
],
111
139
},
140
+ dd_botocore_span_pointers = True ,
112
141
span_pointers = [
113
142
_SpanPointerDescription (
114
143
pointer_kind = "aws.dynamodb.item" ,
@@ -139,16 +168,18 @@ class SpanPointersCase(NamedTuple):
139
168
},
140
169
],
141
170
},
171
+ dd_botocore_span_pointers = True ,
142
172
span_pointers = [],
143
173
),
144
174
],
145
175
ids = lambda test_case : test_case .name ,
146
176
)
147
- def test_calculate_span_pointers (self , test_case : SpanPointersCase ):
177
+ def test_calculate_span_pointers (self , test_case : SpanPointersCase ) -> None :
148
178
assert (
149
179
calculate_span_pointers (
150
180
test_case .event_source ,
151
181
test_case .event ,
182
+ botocore_add_span_pointers = test_case .dd_botocore_span_pointers ,
152
183
)
153
184
== test_case .span_pointers
154
185
)
0 commit comments