mirror of
				https://github.com/falk-werner/webfuse
				synced 2025-06-13 12:54:15 +00:00 
			
		
		
		
	increased test coverage
This commit is contained in:
		
							parent
							
								
									d5adfc6f81
								
							
						
					
					
						commit
						843368f483
					
				| @ -25,7 +25,7 @@ wf_jsonrpc_impl_response_init( | |||||||
| 	result->error = NULL; | 	result->error = NULL; | ||||||
| 
 | 
 | ||||||
| 	json_t * id_holder = json_object_get(response, "id"); | 	json_t * id_holder = json_object_get(response, "id"); | ||||||
| 	if ((NULL == id_holder) || (!json_is_integer(id_holder))) | 	if (!json_is_integer(id_holder)) | ||||||
| 	{ | 	{ | ||||||
| 		result->error = wf_jsonrpc_impl_error(WF_JSONRPC_BAD_FORMAT, "invalid format: missing id"); | 		result->error = wf_jsonrpc_impl_error(WF_JSONRPC_BAD_FORMAT, "invalid format: missing id"); | ||||||
| 		return; | 		return; | ||||||
|  | |||||||
| @ -41,7 +41,7 @@ TEST(wf_json_response, init_error) | |||||||
|     json_decref(message); |     json_decref(message); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| TEST(wf_json_response, init_format_error) | TEST(wf_json_response, init_fail_missing_result_and_error) | ||||||
| { | { | ||||||
|     json_t * message = json_object(); |     json_t * message = json_object(); | ||||||
|     json_object_set_new(message, "id", json_integer(12)); |     json_object_set_new(message, "id", json_integer(12)); | ||||||
| @ -56,3 +56,92 @@ TEST(wf_json_response, init_format_error) | |||||||
|     wf_jsonrpc_impl_response_cleanup(&response); |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|     json_decref(message); |     json_decref(message); | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | TEST(wf_json_response, init_fail_missing_id) | ||||||
|  | { | ||||||
|  |     json_t * message = json_object(); | ||||||
|  |     json_object_set_new(message, "result", json_integer(47)); | ||||||
|  | 
 | ||||||
|  |     struct wf_jsonrpc_response response; | ||||||
|  |     wf_jsonrpc_impl_response_init(&response, message); | ||||||
|  | 
 | ||||||
|  |     ASSERT_EQ(WF_JSONRPC_BAD_FORMAT, json_integer_value(json_object_get(response.error, "code"))); | ||||||
|  |     ASSERT_EQ(nullptr, response.result); | ||||||
|  |     ASSERT_EQ(-1, response.id); | ||||||
|  | 
 | ||||||
|  |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|  |     json_decref(message); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | TEST(wf_json_response, init_fail_wrong_id_type) | ||||||
|  | { | ||||||
|  |     json_t * message = json_object(); | ||||||
|  |     json_object_set_new(message, "result", json_integer(47)); | ||||||
|  |     json_object_set_new(message, "id", json_string("42")); | ||||||
|  | 
 | ||||||
|  |     struct wf_jsonrpc_response response; | ||||||
|  |     wf_jsonrpc_impl_response_init(&response, message); | ||||||
|  | 
 | ||||||
|  |     ASSERT_EQ(WF_JSONRPC_BAD_FORMAT, json_integer_value(json_object_get(response.error, "code"))); | ||||||
|  |     ASSERT_EQ(nullptr, response.result); | ||||||
|  |     ASSERT_EQ(-1, response.id); | ||||||
|  | 
 | ||||||
|  |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|  |     json_decref(message); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | TEST(wf_json_response, init_fail_error_missing_code) | ||||||
|  | { | ||||||
|  |     json_t * message = json_object(); | ||||||
|  |     json_t * err = json_object(); | ||||||
|  |     json_object_set_new(err, "message", json_string("Don't Panic!")); | ||||||
|  |     json_object_set_new(message, "error", err); | ||||||
|  |     json_object_set_new(message, "id", json_integer(23)); | ||||||
|  | 
 | ||||||
|  |     struct wf_jsonrpc_response response; | ||||||
|  |     wf_jsonrpc_impl_response_init(&response, message); | ||||||
|  | 
 | ||||||
|  |     ASSERT_EQ(WF_JSONRPC_BAD_FORMAT, json_integer_value(json_object_get(response.error, "code"))); | ||||||
|  |     ASSERT_EQ(nullptr, response.result); | ||||||
|  |     ASSERT_EQ(23, response.id); | ||||||
|  | 
 | ||||||
|  |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|  |     json_decref(message); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | TEST(wf_json_response, init_fail_error_wrong_code_type) | ||||||
|  | { | ||||||
|  |     json_t * message = json_object(); | ||||||
|  |     json_t * err = json_object(); | ||||||
|  |     json_object_set_new(err, "code", json_string("42")); | ||||||
|  |     json_object_set_new(err, "message", json_string("Don't Panic!")); | ||||||
|  |     json_object_set_new(message, "error", err); | ||||||
|  |     json_object_set_new(message, "id", json_integer(23)); | ||||||
|  | 
 | ||||||
|  |     struct wf_jsonrpc_response response; | ||||||
|  |     wf_jsonrpc_impl_response_init(&response, message); | ||||||
|  | 
 | ||||||
|  |     ASSERT_EQ(WF_JSONRPC_BAD_FORMAT, json_integer_value(json_object_get(response.error, "code"))); | ||||||
|  |     ASSERT_EQ(nullptr, response.result); | ||||||
|  |     ASSERT_EQ(23, response.id); | ||||||
|  | 
 | ||||||
|  |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|  |     json_decref(message); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | TEST(wf_json_response, init_fail_error_wrong_type) | ||||||
|  | { | ||||||
|  |     json_t * message = json_object(); | ||||||
|  |     json_object_set_new(message, "error", json_string("invalid error type")); | ||||||
|  |     json_object_set_new(message, "id", json_integer(23)); | ||||||
|  | 
 | ||||||
|  |     struct wf_jsonrpc_response response; | ||||||
|  |     wf_jsonrpc_impl_response_init(&response, message); | ||||||
|  | 
 | ||||||
|  |     ASSERT_EQ(WF_JSONRPC_BAD_FORMAT, json_integer_value(json_object_get(response.error, "code"))); | ||||||
|  |     ASSERT_EQ(nullptr, response.result); | ||||||
|  |     ASSERT_EQ(23, response.id); | ||||||
|  | 
 | ||||||
|  |     wf_jsonrpc_impl_response_cleanup(&response); | ||||||
|  |     json_decref(message); | ||||||
|  | } | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user