diff options
author | iphydf <iphydf@users.noreply.github.com> | 2016-10-01 00:26:52 +0100 |
---|---|---|
committer | iphydf <iphydf@users.noreply.github.com> | 2016-10-01 02:13:34 +0100 |
commit | c037100747a1a224160cb12defb600ddfe1ba927 (patch) | |
tree | 8332a7d288116b802866e1ed98d1b950425206f7 /testing/hstox/util.c | |
parent | 1977d56caaff40ea9bbf6754b69bec9539a5a969 (diff) |
Import the hstox SUT interface from hstox.
We'll maintain it in the c-toxcore repo, where it belongs.
Diffstat (limited to 'testing/hstox/util.c')
-rw-r--r-- | testing/hstox/util.c | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/testing/hstox/util.c b/testing/hstox/util.c new file mode 100644 index 00000000..9461596c --- /dev/null +++ b/testing/hstox/util.c | |||
@@ -0,0 +1,74 @@ | |||
1 | #include "util.h" | ||
2 | |||
3 | #include <stdarg.h> | ||
4 | |||
5 | char const *type_name(msgpack_object_type type) | ||
6 | { | ||
7 | switch (type) { | ||
8 | case MSGPACK_OBJECT_NIL: | ||
9 | return "nil"; | ||
10 | |||
11 | case MSGPACK_OBJECT_BOOLEAN: | ||
12 | return "boolean"; | ||
13 | |||
14 | case MSGPACK_OBJECT_POSITIVE_INTEGER: | ||
15 | return "positive_integer"; | ||
16 | |||
17 | case MSGPACK_OBJECT_NEGATIVE_INTEGER: | ||
18 | return "negative_integer"; | ||
19 | |||
20 | case MSGPACK_OBJECT_FLOAT: | ||
21 | return "float"; | ||
22 | |||
23 | case MSGPACK_OBJECT_STR: | ||
24 | return "str"; | ||
25 | |||
26 | case MSGPACK_OBJECT_ARRAY: | ||
27 | return "array"; | ||
28 | |||
29 | case MSGPACK_OBJECT_MAP: | ||
30 | return "map"; | ||
31 | |||
32 | case MSGPACK_OBJECT_BIN: | ||
33 | return "bin"; | ||
34 | |||
35 | case MSGPACK_OBJECT_EXT: | ||
36 | return "ext"; | ||
37 | } | ||
38 | |||
39 | return "<unknown type>"; | ||
40 | } | ||
41 | |||
42 | int msgpack_pack_string(msgpack_packer *pk, char const *str) | ||
43 | { | ||
44 | size_t len = strlen(str); | ||
45 | msgpack_pack_str(pk, len); | ||
46 | return msgpack_pack_str_body(pk, str, len); | ||
47 | } | ||
48 | |||
49 | int msgpack_pack_vstringf(msgpack_packer *pk, char const *fmt, va_list ap) | ||
50 | { | ||
51 | char buf[1024]; | ||
52 | vsnprintf(buf, sizeof buf, fmt, ap); | ||
53 | return msgpack_pack_string(pk, buf); | ||
54 | } | ||
55 | |||
56 | int msgpack_pack_stringf(msgpack_packer *pk, char const *fmt, ...) | ||
57 | { | ||
58 | va_list ap; | ||
59 | va_start(ap, fmt); | ||
60 | int res = msgpack_pack_vstringf(pk, fmt, ap); | ||
61 | va_end(ap); | ||
62 | return res; | ||
63 | } | ||
64 | |||
65 | char const *ssprintf(char const *fmt, ...) | ||
66 | { | ||
67 | static char buf[1024]; | ||
68 | |||
69 | va_list ap; | ||
70 | va_start(ap, fmt); | ||
71 | vsnprintf(buf, sizeof buf, fmt, ap); | ||
72 | va_end(ap); | ||
73 | return buf; | ||
74 | } | ||