summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2015-06-29 20:37:01 +0200
committerGünther Deschner <gd@samba.org>2015-07-03 05:02:45 +0200
commit9ebf3804eb4ca48b6ff00db12f42795481347f37 (patch)
tree5636e01c255f91c1a8a515c3c39fe992385072dd /lib
parentbf6f03209494cc43dff717bd78c84bc59b03e76c (diff)
downloadsamba-9ebf3804eb4ca48b6ff00db12f42795481347f37.tar.gz
lib/util:charset/tests: improve strlen_m[_term[_null]]() testing
They differ in their "" vs. NULL handling. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Guenther Deschner <gd@samba.org> Autobuild-User(master): Günther Deschner <gd@samba.org> Autobuild-Date(master): Fri Jul 3 05:02:45 CEST 2015 on sn-devel-104
Diffstat (limited to 'lib')
-rw-r--r--lib/util/charset/tests/charset.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/util/charset/tests/charset.c b/lib/util/charset/tests/charset.c
index a47670e6665..7f3365623ca 100644
--- a/lib/util/charset/tests/charset.c
+++ b/lib/util/charset/tests/charset.c
@@ -217,6 +217,7 @@ static bool test_strlen_m(struct torture_context *tctx)
{
torture_assert_int_equal(tctx, strlen_m("foo"), 3, "simple len");
torture_assert_int_equal(tctx, strlen_m("foo\x83l"), 6, "extended len");
+ torture_assert_int_equal(tctx, strlen_m(""), 0, "empty");
torture_assert_int_equal(tctx, strlen_m(NULL), 0, "NULL");
return true;
}
@@ -225,7 +226,17 @@ static bool test_strlen_m_term(struct torture_context *tctx)
{
torture_assert_int_equal(tctx, strlen_m_term("foo"), 4, "simple len");
torture_assert_int_equal(tctx, strlen_m_term("foo\x83l"), 7, "extended len");
- torture_assert_int_equal(tctx, strlen_m(NULL), 0, "NULL");
+ torture_assert_int_equal(tctx, strlen_m_term(""), 1, "empty");
+ torture_assert_int_equal(tctx, strlen_m_term(NULL), 0, "NULL");
+ return true;
+}
+
+static bool test_strlen_m_term_null(struct torture_context *tctx)
+{
+ torture_assert_int_equal(tctx, strlen_m_term_null("foo"), 4, "simple len");
+ torture_assert_int_equal(tctx, strlen_m_term_null("foo\x83l"), 7, "extended len");
+ torture_assert_int_equal(tctx, strlen_m_term_null(""), 0, "empty");
+ torture_assert_int_equal(tctx, strlen_m_term_null(NULL), 0, "NULL");
return true;
}
@@ -278,6 +289,7 @@ struct torture_suite *torture_local_charset(TALLOC_CTX *mem_ctx)
torture_suite_add_simple_test(suite, "next_token_quote_wrong", test_next_token_quote_wrong);
torture_suite_add_simple_test(suite, "strlen_m", test_strlen_m);
torture_suite_add_simple_test(suite, "strlen_m_term", test_strlen_m_term);
+ torture_suite_add_simple_test(suite, "strlen_m_term_null", test_strlen_m_term_null);
torture_suite_add_simple_test(suite, "strhaslower", test_strhaslower);
torture_suite_add_simple_test(suite, "strhasupper", test_strhasupper);
torture_suite_add_simple_test(suite, "count_chars_m", test_count_chars_m);