Mercurial > archived > louis > perso > liblxcstats
annotate tests/strsplit.c @ 5:8d8c49b066d4
Add a test for strsplit()
author | Louis Opter <louis@dotcloud.com> |
---|---|
date | Sat, 01 Jan 2011 16:05:08 +0100 |
parents | 50215911acb3 |
children |
rev | line source |
---|---|
4
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
1 #include <err.h> |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
2 #include <stdio.h> |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
3 #include <stdlib.h> |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
4 #include <string.h> |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
5 |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
6 #include "lxcstats.h" |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
7 #include "_lxcstats.h" |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
8 |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
9 void |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
10 check(const char *field, const char *ref) |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
11 { |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
12 printf("comparing: [%s] with reference: [%s].\n", field, ref); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
13 if (strcmp(field, ref)) |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
14 exit(EXIT_FAILURE); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
15 } |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
16 |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
17 int |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
18 main(void) |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
19 { |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
20 char usage[] = "system: 4242\nuser: 4242"; |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
21 char test[] = " \tword1 word2 \f\tword3\n"; |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
22 char *fields[4]; |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
23 |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
24 if (_lxcst_strsplit(usage, fields, sizeof(fields) / sizeof(fields[0])) != 4) |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
25 errx(EXIT_FAILURE, "invalid number of fields."); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
26 check(fields[0], "system:"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
27 check(fields[1], "4242"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
28 check(fields[2], "user:"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
29 check(fields[3], "4242"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
30 |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
31 if (_lxcst_strsplit(test, fields, sizeof(fields) / sizeof(fields[0])) != 3) |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
32 errx(EXIT_FAILURE, "invalid number of fields."); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
33 check(fields[0], "word1"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
34 check(fields[1], "word2"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
35 check(fields[2], "word3"); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
36 |
5 | 37 if (_lxcst_strsplit(usage, fields, 1) != 1) |
38 errx(EXIT_FAILURE, "invalid number of fields."); | |
39 check(fields[0], "system:"); | |
40 check(fields[1], "word2"); | |
41 | |
4
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
42 return (EXIT_SUCCESS); |
50215911acb3
Add a strsplit() function and stop to build probes into a separate library
Louis Opter <louis@dotcloud.com>
parents:
diff
changeset
|
43 } |