diff options
Diffstat (limited to 'test/test_sink.c')
-rw-r--r-- | test/test_sink.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/test/test_sink.c b/test/test_sink.c index 8bbfbb2d..7c49cc04 100644 --- a/test/test_sink.c +++ b/test/test_sink.c @@ -97,6 +97,7 @@ on_event(void* const handle, const SerdEvent* const event) static void test_callbacks(void) { + SerdWorld* const world = serd_world_new(); SerdNodes* const nodes = serd_nodes_new(); const SerdNode* base = serd_nodes_uri(nodes, SERD_STRING(NS_EG)); @@ -104,7 +105,7 @@ test_callbacks(void) const SerdNode* uri = serd_nodes_uri(nodes, SERD_STRING(NS_EG "uri")); const SerdNode* blank = serd_nodes_blank(nodes, SERD_STRING("b1")); - SerdEnv* env = serd_env_new(serd_node_string_view(base)); + SerdEnv* env = serd_env_new(world, serd_node_string_view(base)); SerdStatement* const statement = serd_statement_new(base, uri, blank, NULL, NULL); @@ -118,7 +119,7 @@ test_callbacks(void) // Call functions on a sink with no functions set - SerdSink* null_sink = serd_sink_new(&state, NULL, NULL); + SerdSink* null_sink = serd_sink_new(world, &state, NULL, NULL); assert(!serd_sink_write_base(null_sink, base)); assert(!serd_sink_write_prefix(null_sink, name, uri)); @@ -141,7 +142,7 @@ test_callbacks(void) // Try again with a sink that has the event handler set - SerdSink* sink = serd_sink_new(&state, on_event, NULL); + SerdSink* sink = serd_sink_new(world, &state, on_event, NULL); assert(!serd_sink_write_base(sink, base)); assert(serd_node_equals(state.last_base, base)); @@ -164,6 +165,7 @@ test_callbacks(void) serd_statement_free(statement); serd_env_free(env); serd_nodes_free(nodes); + serd_world_free(world); } static void @@ -172,12 +174,16 @@ test_free(void) // Free of null should (as always) not crash serd_sink_free(NULL); + SerdWorld* const world = serd_world_new(); + // Set up a sink with dynamically allocated data and a free function uintptr_t* data = (uintptr_t*)calloc(1, sizeof(uintptr_t)); - SerdSink* sink = serd_sink_new(data, NULL, free); + SerdSink* sink = serd_sink_new(world, data, NULL, free); // Free the sink, which should free the data (rely on valgrind or sanitizers) serd_sink_free(sink); + + serd_world_free(world); } int |