1 #include <ccan/tap/tap.h>
2 #include <ccan/opt/opt.c>
3 #include <ccan/opt/usage.c>
4 #include <ccan/opt/helpers.c>
5 #include <ccan/opt/parse.c>
7 /* Test consume_words helper. */
8 int main(int argc, char *argv[])
15 /* Every line over width. */
16 len = consume_words("hello world", 1, &prefix, &start);
19 ok1(len == strlen("hello"));
20 len = consume_words(" world", 1, &prefix, &start);
22 ok1(len == strlen("world"));
24 ok1(consume_words("", 1, &prefix, &start) == 0);
26 /* Same with width where won't both fit. */
28 len = consume_words("hello world", 5, &prefix, &start);
31 ok1(len == strlen("hello"));
32 len = consume_words(" world", 5, &prefix, &start);
35 ok1(len == strlen("world"));
36 ok1(consume_words("", 5, &prefix, &start) == 0);
39 len = consume_words("hello world", 11, &prefix, &start);
42 ok1(len == strlen("hello world"));
43 ok1(consume_words("", 11, &prefix, &start) == 0);
45 /* Now try a literal, should not be broken */
47 len = consume_words(" hello world", 5, &prefix, &start);
50 ok1(len == strlen("hello world"));
52 /* A literal after an explicit \n also not broken */
54 len = consume_words("hi\n hello world", 5, &prefix, &start);
57 ok1(len == strlen("hi\n"));
58 len = consume_words(" hello world", 5, &prefix, &start);
61 ok1(len == strlen("hello world"));