@@ -21,6 +21,7 @@ def test_sdk_default_values(self, csdk):
2121 def test_init_sdk_error_missing_token (self ):
2222 with pytest .raises (Exception ) as e :
2323 c = carbone_sdk .CarboneSDK ()
24+ assert e .value .args [0 ] == 'CarboneSDK: "API access token" is missing'
2425
2526 def test_simple_mock_http_request (self , csdk , requests_mock ):
2627 requests_mock .get (csdk ._api_url + "/path" , text = "content" )
@@ -36,6 +37,7 @@ def test_set_access_token(self, csdk):
3637 def test_set_access_token_error_missing_token (self , csdk ):
3738 with pytest .raises (ValueError ) as e :
3839 csdk .set_access_token ()
40+ assert e .value .args [0 ] == 'Carbone SDK set_access_token error: argument is missing: api_token'
3941
4042 def test_set_api_version_int (self , csdk ):
4143 new_version = 3
@@ -47,28 +49,35 @@ def test_set_api_version_string(self, csdk):
4749 csdk .set_api_version (new_version )
4850 assert csdk ._api_headers ["carbone-version" ] == new_version
4951
52+ def test_set_api_version_error_missing_version (self , csdk ):
53+ with pytest .raises (ValueError ) as e :
54+ csdk .set_api_version ()
55+ assert e .value .args [0 ] == 'Carbone SDK set_api_version error: argument is missing: api_version'
56+
5057class TestRender :
5158 def test_render_a_report_error_file_missing (self , csdk ):
52- with pytest .raises (ValueError ):
59+ with pytest .raises (ValueError ) as e :
5360 csdk .render ()
61+ assert e .value .args [0 ] == 'Carbone SDK render error: argument is missing: file_or_template_id'
5462
5563 def test_render_a_report_error_json_data_missing (self , csdk ):
56- with pytest .raises (ValueError ):
57- csdk .render ()
64+ with pytest .raises (ValueError ) as e :
65+ csdk .render ("template_id" )
66+ assert e .value .args [0 ] == 'Carbone SDK render error: argument is missing: json_data'
5867
5968 def test_render_a_report_error_from_a_non_existing_template_id (self , csdk , requests_mock ):
6069 fake_template_id = "ThisTemplateIdDoesNotExist"
6170 requests_mock .post (csdk ._api_url + "/render/" + fake_template_id , json = {'success' : False , 'error' : 'Error while rendering template Error: 404 Not Found' })
62- with pytest .raises (Exception ):
63- # should return the error "Error while rendering template Error: 404 Not Found"
71+ with pytest .raises (Exception ) as e :
6472 csdk .render (fake_template_id , {"data" : {"firstname" : "john" , "lastname" : "wick" }})
73+ assert e .value .args [0 ] == 'Carbone SDK render error: Error while rendering template Error: 404 Not Found'
6574
6675 def test_render_a_report_error_from_a_directory (self , csdk , requests_mock ):
6776 fake_template_id = "./tests"
6877 requests_mock .post (csdk ._api_url + "/render/" + fake_template_id , json = {'success' : False , 'error' : 'Error while rendering template Error: 404 Not Found' })
69- with pytest .raises (Exception ):
70- # should return the error "failled to generate the template id"
78+ with pytest .raises (Exception ) as e :
7179 csdk .render (fake_template_id , {"data" : {"firstname" : "john" , "lastname" : "wick" }})
80+ assert e .value .args [0 ] == 'Carbone SDK render error: failled to generate the template id'
7281
7382 def test_render_a_report_from_an_existing_template_id (self , csdk , requests_mock ):
7483 template_id = "0545253258577a632a99065f0572720225f5165cc43db9515e9cef0e17b40114"
@@ -154,13 +163,14 @@ def test_add_template_with_payload(self, csdk, requests_mock):
154163 def test_add_template_error_missing_args (self , csdk ):
155164 with pytest .raises (ValueError ) as e :
156165 csdk .add_template ()
166+ assert e .value .args [0 ] == 'CarboneSDK: add_template method: the argument template_file_name is missing'
157167
158168 def test_add_template_error_with_a_non_existing_file (self , csdk ):
159- with pytest .raises (FileNotFoundError ) as e :
169+ with pytest .raises (FileNotFoundError ):
160170 csdk .add_template ("ShouldThrowAnError" )
161171
162172 def test_add_template_error_with_directory (self , csdk ):
163- with pytest .raises (FileNotFoundError ) as e :
173+ with pytest .raises (IsADirectoryError ) :
164174 csdk .add_template ("../tests" )
165175
166176
@@ -176,7 +186,8 @@ def test_get_template(self, csdk, requests_mock):
176186
177187 def test_get_template_error_missing_template_id (self , csdk ):
178188 with pytest .raises (ValueError ) as e :
179- csdk .add_template ()
189+ csdk .get_template ()
190+ assert e .value .args [0 ] == 'Carbone SDK get_template error: argument is missing: template_id'
180191
181192class TestDeleteTemplate :
182193 def test_delete_template (self , csdk , requests_mock ):
@@ -196,6 +207,7 @@ def test_delete_template_error_already_deleted(self, csdk, requests_mock):
196207 def test_delete_template_error_missing_template_id (self , csdk ):
197208 with pytest .raises (ValueError ) as e :
198209 csdk .delete_template ()
210+ assert e .value .args [0 ] == 'Carbone SDK delete_template error: argument is missing: template_id'
199211
200212class TestRenderReport :
201213 def test_render_report (self , csdk , requests_mock ):
@@ -216,10 +228,12 @@ def test_render_report(self, csdk, requests_mock):
216228 def test_render_report_error_missing_template_id (self , csdk ):
217229 with pytest .raises (ValueError ) as e :
218230 csdk .render_report ()
231+ assert e .value .args [0 ] == 'Carbone SDK render_report error: argument is missing: template_id'
219232
220233 def test_render_report_error_missing_json_data (self , csdk ):
221234 with pytest .raises (ValueError ) as e :
222235 csdk .render_report ("template_id" )
236+ assert e .value .args [0 ] == 'Carbone SDK render_report error: argument is missing: json_data'
223237
224238class TestGetReport :
225239 def test_get_report (self , csdk , requests_mock ):
@@ -238,6 +252,7 @@ def test_get_report(self, csdk, requests_mock):
238252 def test_get_report_error_missing_render_id (self , csdk ):
239253 with pytest .raises (ValueError ) as e :
240254 csdk .get_report ()
255+ assert e .value .args [0 ] == 'Carbone SDK get_report error: argument is missing: render_id'
241256
242257class TestGenerateTemplateID :
243258 def test_generate_template_id_odt_1 (self , csdk ):
@@ -265,6 +280,11 @@ def test_generate_template_id_html_2_payload_1(self, csdk):
265280 res = csdk .generate_template_id (filename_html , "This is a long payload with different characters 1 *5 &*9 %$ 3%&@9 @(( 3992288282 29299 9299929" )
266281 assert res == "70799b421cc9cf75d9112273a8e054c141d484eb8d5988bd006fac83e3990707"
267282
283+ def test_generate_template_id_error (self , csdk ):
284+ with pytest .raises (ValueError ) as e :
285+ csdk .generate_template_id ()
286+ assert e .value .args [0 ] == 'Carbone SDK generate_template_id error: argument is missing: template_file_name'
287+
268288class TestGetReportName :
269289 def test_get_report_name_from_header (self , csdk ):
270290 expected_report_name = "01EEYYHV0ENQE07JCKW8BD2QRP.odt"
0 commit comments