|  | @@ -46,6 +46,7 @@
 | 
											
												
													
														|  |   * http://check.sourceforge.net/doc/check_html/index.html
 |  |   * http://check.sourceforge.net/doc/check_html/index.html
 | 
											
												
													
														|  |   */
 |  |   */
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_parse_http_message)
 |  |  START_TEST(test_parse_http_message)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -99,6 +100,7 @@ START_TEST(test_parse_http_message)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_should_keep_alive)
 |  |  START_TEST(test_should_keep_alive)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -146,6 +148,7 @@ START_TEST(test_should_keep_alive)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_match_prefix)
 |  |  START_TEST(test_match_prefix)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -182,6 +185,7 @@ START_TEST(test_match_prefix)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_remove_double_dots_and_double_slashes)
 |  |  START_TEST(test_remove_double_dots_and_double_slashes)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -210,6 +214,7 @@ START_TEST(test_remove_double_dots_and_double_slashes)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_is_valid_uri)
 |  |  START_TEST(test_is_valid_uri)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* is_valid_uri is superseeded by get_uri_type */
 |  |  	/* is_valid_uri is superseeded by get_uri_type */
 | 
											
										
											
												
													
														|  | @@ -227,6 +232,7 @@ START_TEST(test_is_valid_uri)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_next_option)
 |  |  START_TEST(test_next_option)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -247,6 +253,7 @@ START_TEST(test_next_option)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_skip_quoted)
 |  |  START_TEST(test_skip_quoted)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -269,6 +276,7 @@ START_TEST(test_skip_quoted)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  static int
 |  |  static int
 | 
											
												
													
														|  |  alloc_printf(char **buf, size_t size, const char *fmt, ...)
 |  |  alloc_printf(char **buf, size_t size, const char *fmt, ...)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
										
											
												
													
														|  | @@ -283,6 +291,7 @@ alloc_printf(char **buf, size_t size, const char *fmt, ...)
 | 
											
												
													
														|  |  	return ret;
 |  |  	return ret;
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  static int
 |  |  static int
 | 
											
												
													
														|  |  alloc_printf2(char **buf, const char *fmt, ...)
 |  |  alloc_printf2(char **buf, const char *fmt, ...)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
										
											
												
													
														|  | @@ -295,6 +304,7 @@ alloc_printf2(char **buf, const char *fmt, ...)
 | 
											
												
													
														|  |  	return ret;
 |  |  	return ret;
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_alloc_vprintf)
 |  |  START_TEST(test_alloc_vprintf)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -325,6 +335,46 @@ START_TEST(test_alloc_vprintf)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +START_TEST(test_mg_vsnprintf)
 | 
											
												
													
														|  | 
 |  | +{
 | 
											
												
													
														|  | 
 |  | +    char buf[16];
 | 
											
												
													
														|  | 
 |  | +    int trunc;
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    memset(buf, 0, sizeof(buf));
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    trunc=777;
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 10, "%8i", 123);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "     123");
 | 
											
												
													
														|  | 
 |  | +    ck_assert_int_eq(trunc, 0);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    trunc=777;
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 10, "%9i", 123);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "      123");
 | 
											
												
													
														|  | 
 |  | +    ck_assert_int_eq(trunc, 0);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    trunc=777;
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 9, "%9i", 123);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "      12");
 | 
											
												
													
														|  | 
 |  | +    ck_assert_int_eq(trunc, 1);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    trunc=777;
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 8, "%9i", 123);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "      1");
 | 
											
												
													
														|  | 
 |  | +    ck_assert_int_eq(trunc, 1);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    trunc=777;
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 7, "%9i", 123);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "      ");
 | 
											
												
													
														|  | 
 |  | +    ck_assert_int_eq(trunc, 1);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    strcpy(buf, "1234567890");
 | 
											
												
													
														|  | 
 |  | +    mg_snprintf(NULL, &trunc, buf, 0, "%i", 543);
 | 
											
												
													
														|  | 
 |  | +    ck_assert_str_eq(buf, "1234567890");
 | 
											
												
													
														|  | 
 |  | +}
 | 
											
												
													
														|  | 
 |  | +END_TEST
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_mg_strcasestr)
 |  |  START_TEST(test_mg_strcasestr)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -339,6 +389,7 @@ START_TEST(test_mg_strcasestr)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_parse_port_string)
 |  |  START_TEST(test_parse_port_string)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	/* Adapted from unit_test.c */
 |  |  	/* Adapted from unit_test.c */
 | 
											
										
											
												
													
														|  | @@ -378,6 +429,7 @@ START_TEST(test_parse_port_string)
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  END_TEST
 |  |  END_TEST
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  START_TEST(test_encode_decode)
 |  |  START_TEST(test_encode_decode)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	char buf[128];
 |  |  	char buf[128];
 | 
											
										
											
												
													
														|  | @@ -615,6 +667,7 @@ make_private_suite(void)
 | 
											
												
													
														|  |  	tcase_add_test(tcase_internal_parse, test_skip_quoted);
 |  |  	tcase_add_test(tcase_internal_parse, test_skip_quoted);
 | 
											
												
													
														|  |  	tcase_add_test(tcase_internal_parse, test_mg_strcasestr);
 |  |  	tcase_add_test(tcase_internal_parse, test_mg_strcasestr);
 | 
											
												
													
														|  |  	tcase_add_test(tcase_internal_parse, test_alloc_vprintf);
 |  |  	tcase_add_test(tcase_internal_parse, test_alloc_vprintf);
 | 
											
												
													
														|  | 
 |  | +    tcase_add_test(tcase_internal_parse, test_mg_vsnprintf);
 | 
											
												
													
														|  |  	tcase_add_test(tcase_internal_parse, test_parse_port_string);
 |  |  	tcase_add_test(tcase_internal_parse, test_parse_port_string);
 | 
											
												
													
														|  |  	tcase_set_timeout(tcase_internal_parse, civetweb_min_test_timeout);
 |  |  	tcase_set_timeout(tcase_internal_parse, civetweb_min_test_timeout);
 | 
											
												
													
														|  |  	suite_add_tcase(suite, tcase_internal_parse);
 |  |  	suite_add_tcase(suite, tcase_internal_parse);
 | 
											
										
											
												
													
														|  | @@ -639,9 +692,10 @@ make_private_suite(void)
 | 
											
												
													
														|  |  /* Used to debug test cases without using the check framework */
 |  |  /* Used to debug test cases without using the check framework */
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  void
 |  |  void
 | 
											
												
													
														|  | -xmain(void)
 |  | 
 | 
											
												
													
														|  | 
 |  | +main(void)
 | 
											
												
													
														|  |  {
 |  |  {
 | 
											
												
													
														|  |  	test_alloc_vprintf(0);
 |  |  	test_alloc_vprintf(0);
 | 
											
												
													
														|  | 
 |  | +    test_mg_vsnprintf(0);
 | 
											
												
													
														|  |  	test_parse_date_string(0);
 |  |  	test_parse_date_string(0);
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 |