aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_env.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2021-02-20 16:47:55 -0500
committerDavid Robillard <d@drobilla.net>2022-01-13 20:05:40 -0500
commita25c9927ce648bc83064bb8ea91c9ca8b8a9582f (patch)
tree26a80c2d82199263fb1dde9c0c453596e7948218 /test/test_env.c
parent33df293ad33cc2cd56e121770ecc2a684f181f2c (diff)
downloadserd-a25c9927ce648bc83064bb8ea91c9ca8b8a9582f.tar.gz
serd-a25c9927ce648bc83064bb8ea91c9ca8b8a9582f.tar.bz2
serd-a25c9927ce648bc83064bb8ea91c9ca8b8a9582f.zip
Simplify URI API and implementation
Diffstat (limited to 'test/test_env.c')
-rw-r--r--test/test_env.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/test_env.c b/test/test_env.c
index b86783db..d470971e 100644
--- a/test/test_env.c
+++ b/test/test_env.c
@@ -36,6 +36,7 @@ test_env(void)
{
SerdNode* u = serd_new_string(SERD_URI, "http://example.org/foo");
SerdNode* b = serd_new_string(SERD_CURIE, "invalid");
+ SerdNode* e = serd_new_string(SERD_URI, "");
SerdNode* c = serd_new_string(SERD_CURIE, "eg.2:b");
SerdNode* s = serd_new_string(SERD_LITERAL, "hello");
SerdEnv* env = serd_env_new(NULL);
@@ -49,9 +50,13 @@ test_env(void)
assert(serd_env_expand(env, NULL, &prefix, &suffix) == SERD_ERR_BAD_CURIE);
+ assert(serd_env_set_prefix_from_strings(env, "eg.3", "rel") ==
+ SERD_ERR_BAD_ARG);
+
assert(!serd_env_expand_node(NULL, u));
assert(!serd_env_expand_node(env, b));
assert(!serd_env_expand_node(env, s));
+ assert(!serd_env_expand_node(env, e));
assert(!serd_env_set_base_uri(env, NULL));
@@ -84,6 +89,12 @@ test_env(void)
assert(!serd_env_set_base_uri(env, u));
assert(serd_node_equals(serd_env_base_uri(env, NULL), u));
+
+ SerdNode* xe = serd_env_expand_node(env, e);
+ assert(xe);
+ assert(!strcmp(serd_node_string(xe), "http://example.org/foo"));
+ serd_node_free(xe);
+
assert(!serd_env_set_base_uri(env, NULL));
assert(!serd_env_base_uri(env, NULL));
@@ -92,6 +103,7 @@ test_env(void)
serd_node_free(badpre);
serd_node_free(s);
serd_node_free(c);
+ serd_node_free(e);
serd_node_free(b);
serd_node_free(u);