diff options
author | Nobuaki Sukegawa <nsukeg@gmail.com> | 2015-09-21 13:53:25 +0900 |
---|---|---|
committer | Roger Meier <roger@apache.org> | 2015-09-21 23:07:39 +0200 |
commit | a649e7473bd0229f160332f0c80407ba49765065 (patch) | |
tree | 44dea5abd7123a132851b6e1e181bf6caf3d3a44 /test/c_glib | |
parent | 245c347b7374182f8142ac07e43473ddd8c4d0de (diff) | |
download | thrift-a649e7473bd0229f160332f0c80407ba49765065.tar.gz |
THRIFT-3337 Add testBool method to cross tests
This closes #611
Diffstat (limited to 'test/c_glib')
-rw-r--r-- | test/c_glib/src/test_client.c | 47 | ||||
-rw-r--r-- | test/c_glib/src/thrift_test_handler.c | 18 | ||||
-rw-r--r-- | test/c_glib/src/thrift_test_handler.h | 4 |
3 files changed, 64 insertions, 5 deletions
diff --git a/test/c_glib/src/test_client.c b/test/c_glib/src/test_client.c index dba2daf13..b1fe0657c 100644 --- a/test/c_glib/src/test_client.c +++ b/test/c_glib/src/test_client.c @@ -194,11 +194,12 @@ main (int argc, char **argv) /* Execute the actual tests */ for (test_num = 0; test_num < num_tests; ++test_num) { if (thrift_transport_open (transport, &error)) { - gchar *string = NULL; - gint8 byte = 0; - gint32 int32 = 0; - gint64 int64 = 0; - gdouble dub = 0; + gchar *string = NULL; + gboolean boolean = 0; + gint8 byte = 0; + gint32 int32 = 0; + gint64 int64 = 0; + gdouble dub = 0; gint byte_thing, i32_thing, inner_byte_thing, inner_i32_thing; gint64 i64_thing, inner_i64_thing; @@ -300,6 +301,42 @@ main (int argc, char **argv) } /** + * BOOL TEST + */ + printf ("testByte(true)"); + if (t_test_thrift_test_if_test_bool (test_client, + &boolean, + 1, + &error)) { + printf (" = %s\n", boolean ? "true" : "false"); + if (boolean != 1) + fail_count++; + } + else { + printf ("%s\n", error->message); + g_error_free (error); + error = NULL; + + fail_count++; + } + printf ("testByte(false)"); + if (t_test_thrift_test_if_test_bool (test_client, + &boolean, + 0, + &error)) { + printf (" = %s\n", boolean ? "true" : "false"); + if (boolean != 0) + fail_count++; + } + else { + printf ("%s\n", error->message); + g_error_free (error); + error = NULL; + + fail_count++; + } + + /** * BYTE TEST */ printf ("testByte(1)"); diff --git a/test/c_glib/src/thrift_test_handler.c b/test/c_glib/src/thrift_test_handler.c index ae273bf37..d82befbe6 100644 --- a/test/c_glib/src/thrift_test_handler.c +++ b/test/c_glib/src/thrift_test_handler.c @@ -60,6 +60,21 @@ thrift_test_handler_test_string (TTestThriftTestIf *iface, } gboolean +thrift_test_handler_test_bool (TTestThriftTestIf *iface, + gboolean *_return, + const gboolean thing, + GError **error) +{ + THRIFT_UNUSED_VAR (iface); + THRIFT_UNUSED_VAR (error); + + printf ("testByte(%s)\n", thing ? "true" : "false"); + *_return = thing; + + return TRUE; +} + +gboolean thrift_test_handler_test_byte (TTestThriftTestIf *iface, gint8 *_return, const gint8 thing, @@ -796,6 +811,9 @@ thrift_test_handler_class_init (ThriftTestHandlerClass *klass) base_class->test_string = klass->test_string = thrift_test_handler_test_string; + base_class->test_bool = + klass->test_bool = + thrift_test_handler_test_bool; base_class->test_byte = klass->test_byte = thrift_test_handler_test_byte; diff --git a/test/c_glib/src/thrift_test_handler.h b/test/c_glib/src/thrift_test_handler.h index a34f90aa9..957bbda5d 100644 --- a/test/c_glib/src/thrift_test_handler.h +++ b/test/c_glib/src/thrift_test_handler.h @@ -66,6 +66,10 @@ struct _ThriftTestHandlerClass { gchar **_return, const gchar *thing, GError **error); + gboolean (*test_bool) (TTestThriftTestIf *iface, + gboolean*_return, + const gboolean thing, + GError **error); gboolean (*test_byte) (TTestThriftTestIf *iface, gint8*_return, const gint8 thing, |