From 94bcf1889d5a07305784ff5bc92afffa71a5ccd3 Mon Sep 17 00:00:00 2001 From: James Booth Date: Sat, 12 Jan 2013 23:10:56 +0000 Subject: Added jid datatype --- tests/test_jid.c | 128 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 tests/test_jid.c (limited to 'tests/test_jid.c') diff --git a/tests/test_jid.c b/tests/test_jid.c new file mode 100644 index 00000000..0b56b09d --- /dev/null +++ b/tests/test_jid.c @@ -0,0 +1,128 @@ +#include +#include +#include +#include "jid.h" + +void create_jid_from_null_returns_null(void) +{ + Jid result = jid_create(NULL); + assert_is_null(result); +} + +void create_jid_from_empty_string_returns_null(void) +{ + Jid result = jid_create(""); + assert_is_null(result); +} + +void create_jid_from_full_returns_full(void) +{ + Jid result = jid_create("myuser@mydomain/laptop"); + assert_string_equals("myuser@mydomain/laptop", result->fulljid); +} + +void create_jid_from_full_returns_bare(void) +{ + Jid result = jid_create("myuser@mydomain/laptop"); + assert_string_equals("myuser@mydomain", result->barejid); +} + +void create_jid_from_full_returns_resourcepart(void) +{ + Jid result = jid_create("myuser@mydomain/laptop"); + assert_string_equals("laptop", result->resourcepart); +} + +void create_jid_from_full_returns_localpart(void) +{ + Jid result = jid_create("myuser@mydomain/laptop"); + assert_string_equals("myuser", result->localpart); +} + +void create_jid_from_full_returns_domainpart(void) +{ + Jid result = jid_create("myuser@mydomain/laptop"); + assert_string_equals("mydomain", result->domainpart); +} + +void create_jid_from_full_nolocal_returns_full(void) +{ + Jid result = jid_create("mydomain/laptop"); + assert_string_equals("mydomain/laptop", result->fulljid); +} + +void create_jid_from_full_nolocal_returns_bare(void) +{ + Jid result = jid_create("mydomain/laptop"); + assert_string_equals("mydomain", result->barejid); +} + +void create_jid_from_full_nolocal_returns_resourcepart(void) +{ + Jid result = jid_create("mydomain/laptop"); + assert_string_equals("laptop", result->resourcepart); +} + +void create_jid_from_full_nolocal_returns_domainpart(void) +{ + Jid result = jid_create("mydomain/laptop"); + assert_string_equals("mydomain", result->domainpart); +} + +void create_jid_from_full_nolocal_returns_null_localpart(void) +{ + Jid result = jid_create("mydomain/laptop"); + assert_is_null(result->localpart); +} + +void create_jid_from_bare_returns_null_full(void) +{ + Jid result = jid_create("myuser@mydomain"); + assert_is_null(result->fulljid); +} + +void create_jid_from_bare_returns_null_resource(void) +{ + Jid result = jid_create("myuser@mydomain"); + assert_is_null(result->resourcepart); +} + +void create_jid_from_bare_returns_bare(void) +{ + Jid result = jid_create("myuser@mydomain"); + assert_string_equals("myuser@mydomain", result->barejid); +} + +void create_jid_from_bare_returns_localpart(void) +{ + Jid result = jid_create("myuser@mydomain"); + assert_string_equals("myuser", result->localpart); +} + +void create_jid_from_bare_returns_domainpart(void) +{ + Jid result = jid_create("myuser@mydomain"); + assert_string_equals("mydomain", result->domainpart); +} + +void register_jid_tests(void) +{ + TEST_MODULE("jid tests"); + TEST(create_jid_from_null_returns_null); + TEST(create_jid_from_empty_string_returns_null); + TEST(create_jid_from_full_returns_full); + TEST(create_jid_from_full_returns_bare); + TEST(create_jid_from_full_returns_resourcepart); + TEST(create_jid_from_full_returns_localpart); + TEST(create_jid_from_full_returns_domainpart); + TEST(create_jid_from_full_nolocal_returns_full); + TEST(create_jid_from_full_nolocal_returns_bare); + TEST(create_jid_from_full_nolocal_returns_resourcepart); + TEST(create_jid_from_full_nolocal_returns_domainpart); + TEST(create_jid_from_full_nolocal_returns_null_localpart); + TEST(create_jid_from_bare_returns_null_full); + TEST(create_jid_from_bare_returns_null_resource); + TEST(create_jid_from_bare_returns_bare); + TEST(create_jid_from_bare_returns_localpart); + TEST(create_jid_from_bare_returns_domainpart); +} -- cgit 1.4.1-2-gfad0