X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fcoroutine%2Ftest%2Fapi-3.c;fp=ccan%2Fcoroutine%2Ftest%2Fapi-3.c;h=013e60a54a99f4879b8b3f31b08d898a324aaf6f;hb=b4f0767d388c7f3629666400f48ede1a7b4be7f5;hp=4b90b46310b2952ba2a780ac72089db842670496;hpb=fe3995b4e626466ab211e37392f8500f1fffb5c7;p=ccan diff --git a/ccan/coroutine/test/api-3.c b/ccan/coroutine/test/api-3.c index 4b90b463..013e60a5 100644 --- a/ccan/coroutine/test/api-3.c +++ b/ccan/coroutine/test/api-3.c @@ -38,6 +38,11 @@ static void test_metadata(struct coroutine_stack *stack) { struct metadata *meta; + ok1(stack != NULL); + ok1(coroutine_stack_check(stack, NULL) == stack); + ok1(coroutine_stack_size(stack) + == BUFSIZE - COROUTINE_STK_OVERHEAD - sizeof(struct metadata)); + meta = coroutine_stack_to_metadata(stack, sizeof(*meta)); ok1(coroutine_stack_from_metadata(meta, sizeof(*meta)) == stack); @@ -68,22 +73,19 @@ int main(void) struct coroutine_stack *stack; /* This is how many tests you plan to run */ - plan_tests(10); + plan_tests(1 + 2 * 9); /* Fix seed so we get consistent, though pseudo-random results */ srandom(0); + stack = coroutine_stack_alloc(BUFSIZE, sizeof(struct metadata)); + test_metadata(stack); + coroutine_stack_release(stack, sizeof(struct metadata)); + buf = malloc(BUFSIZE); ok1(buf != NULL); - stack = coroutine_stack_init(buf, BUFSIZE, sizeof(struct metadata)); - ok1(stack != NULL); - ok1(coroutine_stack_check(stack, NULL) == stack); - ok1(coroutine_stack_size(stack) - == BUFSIZE - COROUTINE_STK_OVERHEAD - sizeof(struct metadata)); - test_metadata(stack); - coroutine_stack_release(stack, sizeof(struct metadata)); free(buf);