diff options
| author | 2024-06-13 20:57:07 -0400 | |
|---|---|---|
| committer | 2024-06-13 20:57:07 -0400 | |
| commit | 3d7e39cfd2ac5c617c0d7e059d7b90a918307507 (patch) | |
| tree | 1c3ddbd744c3221c0c3a015df639061b4c412637 /examples/string | |
| parent | change uns_root_ptr to uns_ctr (diff) | |
hashtable test
Diffstat (limited to 'examples/string')
| -rw-r--r-- | examples/string/Makefile | 2 | ||||
| -rw-r--r-- | examples/string/test_common.c | 80 |
2 files changed, 1 insertions, 81 deletions
diff --git a/examples/string/Makefile b/examples/string/Makefile index 25352a8..bf70827 100644 --- a/examples/string/Makefile +++ b/examples/string/Makefile @@ -1,6 +1,6 @@ .PHONY: test clean TESTS=test_small.test test_inefficient.test test_large.test -COMMON_OBJS=test_common.o uns_string.o +COMMON_OBJS=../test_common.o uns_string.o .SUFFIXES: .test CFLAGS=-Wall -Wno-overlength-strings -std=c89 -Werror -pedantic -fPIC -g -Iinclude diff --git a/examples/string/test_common.c b/examples/string/test_common.c deleted file mode 100644 index de12d93..0000000 --- a/examples/string/test_common.c +++ /dev/null @@ -1,80 +0,0 @@ -/* Copyright (c) 2024, Peter McGoron - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1) Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2) Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include <stdlib.h> -#include <stdio.h> -#include "uns.h" -#include "cheney_c89.h" - -/* This file sets up the environment for a test. - * - * Each test is compiled as a separate program to isolate tests portably. - * A test suite is a shell script (or batch file or whatever you want...) - */ - -static void oom(struct uns_gc *gc) -{ - (void)gc; - fprintf(stderr, "failed: OOM\n"); - exit(1); -} - -static void after_gc(struct uns_gc *gc) -{ - fprintf(stderr, - "The garbage collector has run %ld times\n" - "\tbefore collection: %lu\n" - "\tafter collection: %lu\n", - gc->collection_number, - gc->before_collection, - gc->after_collection - ); - - if (gc->after_collection >= gc->before_collection/2) - gc->next_alloc *= 2; -} - -extern int test(struct uns_gc *gc); - -int main(void) -{ - static struct uns_gc gc; - int i; - - gc.next_alloc = 1024; - gc.ctx = malloc(uns_cheney_c89_ctx_size); - gc.after_gc = after_gc; - gc.oom = oom; - - if (!gc.ctx) - return 1; - if (!uns_cheney_c89_init(&gc)) - return 2; - gc.next_alloc = 2048; - - i = test(&gc); - gc.deinit(&gc); - return i; -} |
