aboutsummaryrefslogtreecommitdiffstats
path: root/test/env_test.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-11-09 12:29:47 +0100
committerDavid Robillard <d@drobilla.net>2020-11-09 20:03:10 +0100
commitf6d870d67fd8f38539ded74ede295e9b19fb88bc (patch)
tree0c3ebc455872bc31fd79ea3dde2c82be9d1ad74c /test/env_test.c
parentd5f8dc60b7a08de3b6db21679b02fd2e358eb72c (diff)
downloadserd-f6d870d67fd8f38539ded74ede295e9b19fb88bc.tar.gz
serd-f6d870d67fd8f38539ded74ede295e9b19fb88bc.tar.bz2
serd-f6d870d67fd8f38539ded74ede295e9b19fb88bc.zip
Rename unit tests to start with a consistent prefix
Diffstat (limited to 'test/env_test.c')
-rw-r--r--test/env_test.c95
1 files changed, 0 insertions, 95 deletions
diff --git a/test/env_test.c b/test/env_test.c
deleted file mode 100644
index 1ed7552e..00000000
--- a/test/env_test.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- Copyright 2011-2020 David Robillard <http://drobilla.net>
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-
-#undef NDEBUG
-
-#include "serd/serd.h"
-
-#include <assert.h>
-#include <stdint.h>
-#include <string.h>
-
-#define USTR(s) ((const uint8_t*)(s))
-
-static SerdStatus
-count_prefixes(void* handle, const SerdNode* name, const SerdNode* uri)
-{
- (void)name;
- (void)uri;
-
- ++*(int*)handle;
- return SERD_SUCCESS;
-}
-
-static void
-test_env(void)
-{
- SerdNode u = serd_node_from_string(SERD_URI, USTR("http://example.org/foo"));
- SerdNode b = serd_node_from_string(SERD_CURIE, USTR("invalid"));
- SerdNode c = serd_node_from_string(SERD_CURIE, USTR("eg.2:b"));
- SerdEnv* env = serd_env_new(NULL);
- serd_env_set_prefix_from_strings(env, USTR("eg.2"), USTR("http://example.org/"));
-
- assert(serd_env_set_base_uri(env, NULL));
- assert(serd_env_set_base_uri(env, &SERD_NODE_NULL));
- assert(serd_node_equals(serd_env_get_base_uri(env, NULL), &SERD_NODE_NULL));
-
- SerdChunk prefix;
- SerdChunk suffix;
- assert(serd_env_expand(env, &b, &prefix, &suffix));
-
- SerdNode xnode = serd_env_expand_node(env, &SERD_NODE_NULL);
- assert(serd_node_equals(&xnode, &SERD_NODE_NULL));
-
- SerdNode xu = serd_env_expand_node(env, &u);
- assert(!strcmp((const char*)xu.buf, "http://example.org/foo"));
- serd_node_free(&xu);
-
- SerdNode badpre = serd_node_from_string(SERD_CURIE, USTR("hm:what"));
- SerdNode xbadpre = serd_env_expand_node(env, &badpre);
- assert(serd_node_equals(&xbadpre, &SERD_NODE_NULL));
-
- SerdNode xc = serd_env_expand_node(env, &c);
- assert(!strcmp((const char*)xc.buf, "http://example.org/b"));
- serd_node_free(&xc);
-
- assert(serd_env_set_prefix(env, &SERD_NODE_NULL, &SERD_NODE_NULL));
-
- const SerdNode lit = serd_node_from_string(SERD_LITERAL, USTR("hello"));
- assert(serd_env_set_prefix(env, &b, &lit));
-
- const SerdNode blank = serd_node_from_string(SERD_BLANK, USTR("b1"));
- const SerdNode xblank = serd_env_expand_node(env, &blank);
- assert(serd_node_equals(&xblank, &SERD_NODE_NULL));
-
- int n_prefixes = 0;
- serd_env_set_prefix_from_strings(env, USTR("eg.2"), USTR("http://example.org/"));
- serd_env_foreach(env, count_prefixes, &n_prefixes);
- assert(n_prefixes == 1);
-
- SerdNode shorter_uri = serd_node_from_string(SERD_URI, USTR("urn:foo"));
- SerdNode prefix_name;
- assert(!serd_env_qualify(env, &shorter_uri, &prefix_name, &suffix));
-
- serd_env_free(env);
-}
-
-int
-main(void)
-{
- test_env();
- return 0;
-}