summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJohan Dahlin <jdahlin@async.com.br>2007-06-30 06:57:47 +0000
committerJohan Dahlin <johan@src.gnome.org>2007-06-30 06:57:47 +0000
commit357e2cbfff1c0b36035ea73007c8faf7c20daf64 (patch)
tree83a8dc38f1d088058812ad329f2110604cb9f1d6 /tests
parent9a779e8e2d0925a4aece07c4102af359f6e5e980 (diff)
downloadgtk+-357e2cbfff1c0b36035ea73007c8faf7c20daf64.tar.gz
Make boolean string parsing consistent, #452464
2007-06-30 Johan Dahlin <jdahlin@async.com.br> * gtk/gtkbuilder.c: (gtk_builder_value_from_string_type): * gtk/gtkbuilderparser.c: (_gtk_builder_parse_boolean), (parse_property), (parse_signal): * gtk/gtkbuilderprivate.h: * tests/buildertest.c: (test_value_from_string): Make boolean string parsing consistent, #452464 svn path=/trunk/; revision=18305
Diffstat (limited to 'tests')
-rw-r--r--tests/buildertest.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/buildertest.c b/tests/buildertest.c
index ce46928968..48fbd88cee 100644
--- a/tests/buildertest.c
+++ b/tests/buildertest.c
@@ -1508,6 +1508,11 @@ test_value_from_string (void)
g_return_val_if_fail (g_value_get_boolean (&value) == TRUE, FALSE);
g_value_unset (&value);
+ g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "tRuE", &value, &error), FALSE);
+ g_return_val_if_fail (G_VALUE_HOLDS_BOOLEAN (&value), FALSE);
+ g_return_val_if_fail (g_value_get_boolean (&value) == TRUE, FALSE);
+ g_value_unset (&value);
+
g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "blaurgh", &value, &error) == FALSE, FALSE);
g_return_val_if_fail (error != NULL, FALSE);
g_value_unset (&value);
@@ -1516,6 +1521,27 @@ test_value_from_string (void)
g_error_free (error);
error = NULL;
+ g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "yess", &value, &error) == FALSE, FALSE);
+ g_value_unset (&value);
+ g_return_val_if_fail (error->domain == GTK_BUILDER_ERROR, FALSE);
+ g_return_val_if_fail (error->code == GTK_BUILDER_ERROR_INVALID_VALUE, FALSE);
+ g_error_free (error);
+ error = NULL;
+
+ g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "trueee", &value, &error) == FALSE, FALSE);
+ g_value_unset (&value);
+ g_return_val_if_fail (error->domain == GTK_BUILDER_ERROR, FALSE);
+ g_return_val_if_fail (error->code == GTK_BUILDER_ERROR_INVALID_VALUE, FALSE);
+ g_error_free (error);
+ error = NULL;
+
+ g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "", &value, &error) == FALSE, FALSE);
+ g_value_unset (&value);
+ g_return_val_if_fail (error->domain == GTK_BUILDER_ERROR, FALSE);
+ g_return_val_if_fail (error->code == GTK_BUILDER_ERROR_INVALID_VALUE, FALSE);
+ g_error_free (error);
+ error = NULL;
+
g_return_val_if_fail (gtk_builder_value_from_string_type (builder, G_TYPE_INT, "12345", &value, &error), FALSE);
g_return_val_if_fail (G_VALUE_HOLDS_INT (&value), FALSE);
g_return_val_if_fail (g_value_get_int (&value) == 12345, FALSE);