diff options
Diffstat (limited to 'ccan/take/test/run-debug.c')
| -rw-r--r-- | ccan/take/test/run-debug.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/ccan/take/test/run-debug.c b/ccan/take/test/run-debug.c new file mode 100644 index 0000000..a9dda6e --- /dev/null +++ b/ccan/take/test/run-debug.c @@ -0,0 +1,34 @@ +#include <stdlib.h> +#include <stdbool.h> + +#define CCAN_TAKE_DEBUG 1 +#include <ccan/take/take.h> +#include <ccan/take/take.c> +#include <ccan/tap/tap.h> + +int main(void) +{ + const char *p = "hi"; + + plan_tests(14); + + /* We can take NULL. */ + ok1(take(NULL) == NULL); + ok1(is_taken(NULL)); + ok1(strstr(taken_any(), "run-debug.c:16:")); + ok1(taken(NULL)); /* Undoes take() */ + ok1(!is_taken(NULL)); + ok1(!taken(NULL)); + ok1(!taken_any()); + + /* We can take a real pointer. */ + ok1(take(p) == p); + ok1(is_taken(p)); + ok1(strends(taken_any(), "run-debug.c:25:p")); + ok1(taken(p)); /* Undoes take() */ + ok1(!is_taken(p)); + ok1(!taken(p)); + ok1(!taken_any()); + + return exit_status(); +} |
