@@ -21,6 +21,7 @@ def s3_object_handler_fn_arn(infrastructure: dict) -> str:
21
21
return infrastructure .get ("S3ObjectHandler" , "" )
22
22
23
23
24
+ @pytest .mark .xdist_group (name = "streaming" )
24
25
def get_object_version (bucket , key ) -> str :
25
26
s3 = boto3 .client ("s3" )
26
27
versions = s3 .list_object_versions (Bucket = bucket )
@@ -43,13 +44,15 @@ def get_lambda_result_payload(s3_object_handler_fn_arn: str, payload: dict) -> d
43
44
return json .loads (handler_result ["Payload" ].read ())
44
45
45
46
47
+ @pytest .mark .xdist_group (name = "streaming" )
46
48
def test_s3_object_size (s3_object_handler_fn_arn , regular_bucket_name ):
47
49
payload = {"bucket" : regular_bucket_name , "key" : "plain.txt" }
48
50
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
49
51
assert result .get ("size" ) == 12
50
52
assert result .get ("body" ) == "hello world"
51
53
52
54
55
+ @pytest .mark .xdist_group (name = "streaming" )
53
56
def test_s3_versioned_object_size (s3_object_handler_fn_arn , versioned_bucket_name ):
54
57
key = "plain.txt"
55
58
payload = {
@@ -62,18 +65,21 @@ def test_s3_versioned_object_size(s3_object_handler_fn_arn, versioned_bucket_nam
62
65
assert result .get ("body" ) == "hello world"
63
66
64
67
68
+ @pytest .mark .xdist_group (name = "streaming" )
65
69
def test_s3_object_non_existent (s3_object_handler_fn_arn , regular_bucket_name ):
66
70
payload = {"bucket" : regular_bucket_name , "key" : "NOTEXISTENT.txt" }
67
71
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
68
72
assert result .get ("error" ) == "Not found"
69
73
70
74
75
+ @pytest .mark .xdist_group (name = "streaming" )
71
76
def test_s3_object_csv_constructor (s3_object_handler_fn_arn , regular_bucket_name ):
72
77
payload = {"bucket" : regular_bucket_name , "key" : "csv.txt" , "is_csv" : True }
73
78
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
74
79
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
75
80
76
81
82
+ @pytest .mark .xdist_group (name = "streaming" )
77
83
def test_s3_versioned_object_csv_constructor (s3_object_handler_fn_arn , versioned_bucket_name ):
78
84
key = "csv.txt"
79
85
payload = {
@@ -86,24 +92,28 @@ def test_s3_versioned_object_csv_constructor(s3_object_handler_fn_arn, versioned
86
92
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
87
93
88
94
95
+ @pytest .mark .xdist_group (name = "streaming" )
89
96
def test_s3_object_csv_transform (s3_object_handler_fn_arn , regular_bucket_name ):
90
97
payload = {"bucket" : regular_bucket_name , "key" : "csv.txt" , "transform_csv" : True }
91
98
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
92
99
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
93
100
94
101
102
+ @pytest .mark .xdist_group (name = "streaming" )
95
103
def test_s3_object_csv_transform_in_place (s3_object_handler_fn_arn , regular_bucket_name ):
96
104
payload = {"bucket" : regular_bucket_name , "key" : "csv.txt" , "transform_csv" : True , "in_place" : True }
97
105
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
98
106
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
99
107
100
108
109
+ @pytest .mark .xdist_group (name = "streaming" )
101
110
def test_s3_object_csv_gzip_constructor (s3_object_handler_fn_arn , regular_bucket_name ):
102
111
payload = {"bucket" : regular_bucket_name , "key" : "csv.txt.gz" , "is_csv" : True , "is_gzip" : True }
103
112
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
104
113
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
105
114
106
115
116
+ @pytest .mark .xdist_group (name = "streaming" )
107
117
def test_s3_versioned_object_csv_gzip_constructor (s3_object_handler_fn_arn , versioned_bucket_name ):
108
118
key = "csv.txt.gz"
109
119
payload = {
@@ -117,12 +127,14 @@ def test_s3_versioned_object_csv_gzip_constructor(s3_object_handler_fn_arn, vers
117
127
assert result .get ("body" ) == {"name" : "hello" , "value" : "world" }
118
128
119
129
130
+ @pytest .mark .xdist_group (name = "streaming" )
120
131
def test_s3_object_gzip_constructor (s3_object_handler_fn_arn , regular_bucket_name ):
121
132
payload = {"bucket" : regular_bucket_name , "key" : "plain.txt.gz" , "is_gzip" : True }
122
133
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
123
134
assert result .get ("body" ) == "hello world"
124
135
125
136
137
+ @pytest .mark .xdist_group (name = "streaming" )
126
138
def test_s3_versioned_object_gzip_constructor (s3_object_handler_fn_arn , versioned_bucket_name ):
127
139
key = "plain.txt.gz"
128
140
payload = {
@@ -135,39 +147,45 @@ def test_s3_versioned_object_gzip_constructor(s3_object_handler_fn_arn, versione
135
147
assert result .get ("body" ) == "hello world"
136
148
137
149
150
+ @pytest .mark .xdist_group (name = "streaming" )
138
151
def test_s3_object_gzip_transform (s3_object_handler_fn_arn , regular_bucket_name ):
139
152
payload = {"bucket" : regular_bucket_name , "key" : "plain.txt.gz" , "transform_gzip" : True }
140
153
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
141
154
assert result .get ("body" ) == "hello world"
142
155
143
156
157
+ @pytest .mark .xdist_group (name = "streaming" )
144
158
def test_s3_object_gzip_transform_in_place (s3_object_handler_fn_arn , regular_bucket_name ):
145
159
payload = {"bucket" : regular_bucket_name , "key" : "plain.txt.gz" , "transform_gzip" : True , "in_place" : True }
146
160
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
147
161
assert result .get ("body" ) == "hello world"
148
162
149
163
164
+ @pytest .mark .xdist_group (name = "streaming" )
150
165
def test_s3_object_zip_transform (s3_object_handler_fn_arn , regular_bucket_name ):
151
166
payload = {"bucket" : regular_bucket_name , "key" : "fileset.zip" , "transform_zip" : True }
152
167
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
153
168
assert result .get ("manifest" ) == ["1.txt" , "2.txt" ]
154
169
assert result .get ("body" ) == "This is file 2"
155
170
156
171
172
+ @pytest .mark .xdist_group (name = "streaming" )
157
173
def test_s3_object_zip_transform_in_place (s3_object_handler_fn_arn , regular_bucket_name ):
158
174
payload = {"bucket" : regular_bucket_name , "key" : "fileset.zip" , "transform_zip" : True , "in_place" : True }
159
175
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
160
176
assert result .get ("manifest" ) == ["1.txt" , "2.txt" ]
161
177
assert result .get ("body" ) == "This is file 2"
162
178
163
179
180
+ @pytest .mark .xdist_group (name = "streaming" )
164
181
def test_s3_object_zip_lzma_transform (s3_object_handler_fn_arn , regular_bucket_name ):
165
182
payload = {"bucket" : regular_bucket_name , "key" : "fileset.zip.lzma" , "transform_zip_lzma" : True }
166
183
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
167
184
assert result .get ("manifest" ) == ["1.txt" , "2.txt" ]
168
185
assert result .get ("body" ) == "This is file 2"
169
186
170
187
188
+ @pytest .mark .xdist_group (name = "streaming" )
171
189
def test_s3_object_zip_lzma_transform_in_place (s3_object_handler_fn_arn , regular_bucket_name ):
172
190
payload = {"bucket" : regular_bucket_name , "key" : "fileset.zip.lzma" , "transform_zip_lzma" : True , "in_place" : True }
173
191
result = get_lambda_result_payload (s3_object_handler_fn_arn , payload )
0 commit comments