diff options
author | Richard Mudgett <rmudgett@digium.com> | 2016-10-12 16:20:00 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2016-10-13 18:11:36 -0500 |
commit | 7f8f1257381e1697a0347b101382d57ebf2c0b06 (patch) | |
tree | b2cc6ebe8adcb0c65d466e2b2bb4b14a13074a06 /tests | |
parent | 9621c9bcbca70f61605606db8517a789f53f8600 (diff) |
json: Check party id name, number, subaddresses for UTF-8.
* Updated unit test as ast_json_name_number() is now NULL tolerant.
ASTERISK-26466 #close
Reported by: Richard Mudgett
Change-Id: I7d4e14194f8f81f24a1dc34d1b8602c0950265a6
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_json.c | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/tests/test_json.c b/tests/test_json.c index 9d624cdc6..206bd8a39 100644 --- a/tests/test_json.c +++ b/tests/test_json.c @@ -1597,11 +1597,26 @@ AST_TEST_DEFINE(json_test_clever_circle) return AST_TEST_PASS; } -AST_TEST_DEFINE(json_test_name_number) +static int test_name_number(const char *name, const char *number) { - RAII_VAR(struct ast_json *, uut, NULL, ast_json_unref); - RAII_VAR(struct ast_json *, expected, NULL, ast_json_unref); + int res; + struct ast_json *uut; + struct ast_json *expected; + + expected = ast_json_pack("{s: s, s: s}", + "name", name ?: "", + "number", number ?: ""); + uut = ast_json_name_number(name, number); + + res = ast_json_equal(expected, uut); + ast_json_unref(expected); + ast_json_unref(uut); + return res; +} + +AST_TEST_DEFINE(json_test_name_number) +{ switch (cmd) { case TEST_INIT: info->name = "name_number"; @@ -1613,15 +1628,10 @@ AST_TEST_DEFINE(json_test_name_number) break; } - ast_test_validate(test, NULL == ast_json_name_number("name", NULL)); - ast_test_validate(test, NULL == ast_json_name_number(NULL, "1234")); - ast_test_validate(test, NULL == ast_json_name_number(NULL, NULL)); - - expected = ast_json_pack("{s: s, s: s}", - "name", "Jenny", - "number", "867-5309"); - uut = ast_json_name_number("Jenny", "867-5309"); - ast_test_validate(test, ast_json_equal(expected, uut)); + ast_test_validate(test, test_name_number("name", NULL)); + ast_test_validate(test, test_name_number(NULL, "1234")); + ast_test_validate(test, test_name_number(NULL, NULL)); + ast_test_validate(test, test_name_number("Jenny", "867-5309")); return AST_TEST_PASS; } |