| #include <stdarg.h> |
| #include <stddef.h> |
| #include <setjmp.h> |
| #include "cmockery.h" |
| |
| #include "c.h" |
| #include "../dumputils.c" |
| |
| |
| /* |
| * Test for custom_fmtopts_string() |
| * This function receives a string in the form of "key value key value" |
| * and converts it to "key = value,key = value" format. |
| * (Example input: formatter E'fixedwidth_in' null E' ' preserve_blanks E'on') |
| */ |
| void |
| test__custom_fmtopts_string(void **state) |
| { |
| char* result = custom_fmtopts_string(NULL); |
| assert_true(result==NULL); |
| |
| result = custom_fmtopts_string(""); |
| assert_string_equal(result, ""); |
| |
| free(result); |
| |
| result = custom_fmtopts_string("formatter E'fixedwidth_in' null E' '"); |
| assert_string_equal(result, "formatter = 'fixedwidth_in',null = ' '"); |
| |
| free(result); |
| |
| result = custom_fmtopts_string("formatter E'fixedwidth_in' comma E'\\'' null E' '"); |
| assert_string_equal(result, "formatter = 'fixedwidth_in',comma = '\\'',null = ' '"); |
| |
| free(result); |
| |
| result = custom_fmtopts_string("formatter E'fixedwidth_in' null E' ' preserve_blanks E'on' comma E'\\''"); |
| assert_string_equal(result, "formatter = 'fixedwidth_in',null = ' ',preserve_blanks = 'on',comma = '\\''"); |
| |
| free(result); |
| |
| } |
| |
| |
| int |
| main(int argc, char* argv[]) |
| { |
| cmockery_parse_arguments(argc, argv); |
| |
| const UnitTest tests[] = { |
| unit_test(test__custom_fmtopts_string) |
| }; |
| return run_tests(tests); |
| } |