diff options
author | Kristian Høgsberg <krh@bitplanet.net> | 2012-03-05 21:53:38 -0500 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2012-03-05 21:53:38 -0500 |
commit | b2afde6f184dfe1c3cca656dc1f9862a45bfa24d (patch) | |
tree | d98df0dc13ddaf7b3c1cfd3dfdc51a2bb6fe6945 | |
parent | d86718fc33d22a8719f0d0773aad5edaa495d36c (diff) |
tests: Add more marshal tests
-rw-r--r-- | tests/connection-test.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/connection-test.c b/tests/connection-test.c index 5915857..b45532f 100644 --- a/tests/connection-test.c +++ b/tests/connection-test.c @@ -177,6 +177,9 @@ marshal(struct marshal_data *data, const char *format, int size, ...) TEST(connection_marshal) { struct marshal_data data; + struct wl_object object; + struct wl_array array; + static const char text[] = "curry"; data.connection = setup(data.s, &data.mask); @@ -190,6 +193,25 @@ TEST(connection_marshal) assert(data.buffer[2] == 7); assert(strcmp((char *) &data.buffer[3], "frappo") == 0); + object.id = 557799; + marshal(&data, "o", 12, &object); + assert(data.buffer[2] == object.id); + + marshal(&data, "o", 12, NULL); + assert(data.buffer[2] == 0); + + marshal(&data, "n", 12, &object); + assert(data.buffer[2] == object.id); + + marshal(&data, "n", 12, NULL); + assert(data.buffer[2] == 0); + + array.data = (void *) text; + array.size = sizeof text; + marshal(&data, "a", 20, &array); + assert(data.buffer[2] == array.size); + assert(memcmp(&data.buffer[3], text, array.size) == 0); + wl_connection_destroy(data.connection); close(data.s[1]); } |