Mercurial > archived > louis > perso > liblxcstats
diff tests/strsplit.c @ 4:50215911acb3
Add a strsplit() function and stop to build probes into a separate library
author | Louis Opter <louis@dotcloud.com> |
---|---|
date | Sat, 01 Jan 2011 16:01:19 +0100 |
parents | |
children | 8d8c49b066d4 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/strsplit.c Sat Jan 01 16:01:19 2011 +0100 @@ -0,0 +1,38 @@ +#include <err.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include "lxcstats.h" +#include "_lxcstats.h" + +void +check(const char *field, const char *ref) +{ + printf("comparing: [%s] with reference: [%s].\n", field, ref); + if (strcmp(field, ref)) + exit(EXIT_FAILURE); +} + +int +main(void) +{ + char usage[] = "system: 4242\nuser: 4242"; + char test[] = " \tword1 word2 \f\tword3\n"; + char *fields[4]; + + if (_lxcst_strsplit(usage, fields, sizeof(fields) / sizeof(fields[0])) != 4) + errx(EXIT_FAILURE, "invalid number of fields."); + check(fields[0], "system:"); + check(fields[1], "4242"); + check(fields[2], "user:"); + check(fields[3], "4242"); + + if (_lxcst_strsplit(test, fields, sizeof(fields) / sizeof(fields[0])) != 3) + errx(EXIT_FAILURE, "invalid number of fields."); + check(fields[0], "word1"); + check(fields[1], "word2"); + check(fields[2], "word3"); + + return (EXIT_SUCCESS); +}