[glib] Add testcases for <range> and <choices>
- From: Ryan Lortie <ryanl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] Add testcases for <range> and <choices>
- Date: Mon, 26 Apr 2010 01:09:36 +0000 (UTC)
commit 6f7fb3744bbb4d1ee04d4e526d2ff7225c56c426
Author: Christian Persch <chpe gnome org>
Date: Sun Apr 25 20:07:26 2010 -0500
Add testcases for <range> and <choices>
Bug #616102.
gio/tests/Makefile.am | 48 +++++++++++++-------
gio/tests/gschema-compile.c | 40 ++++++++++-------
.../array-default-not-in-choices.gschema.xml | 11 +++++
.../schema-tests/choice-missing-value.gschema.xml | 10 ++++
.../schema-tests/choices-wrong-type.gschema.xml | 8 +++
.../default-not-in-choices.gschema.xml | 11 +++++
.../schema-tests/default-out-of-range.gschema.xml | 8 +++
.../schema-tests/range-missing-max.gschema.xml | 8 +++
.../schema-tests/range-missing-min.gschema.xml | 8 +++
.../schema-tests/range-wrong-type.gschema.xml | 8 +++
10 files changed, 127 insertions(+), 33 deletions(-)
---
diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am
index ba8fa6f..8be6313 100644
--- a/gio/tests/Makefile.am
+++ b/gio/tests/Makefile.am
@@ -150,23 +150,37 @@ gsettings_LDADD = $(progs_ldadd)
gschema_compile_SOURCES = gschema-compile.c
gschema_compile_LDADD = $(progs_ldadd)
-EXTRA_DIST += \
- socket-common.c \
- org.gtk.test.gschema \
- org.gtk.test.gschema.xml \
- de.po \
- schema-tests/bad-type.gschema.xml \
- schema-tests/incomplete-list.gschema.xml \
- schema-tests/missing-quotes.gschema.xml \
- schema-tests/no-default.gschema.xml \
- schema-tests/wrong-category.gschema.xml \
- schema-tests/overflow.gschema.xml \
- schema-tests/bad-key.gschema.xml \
- schema-tests/bad-key2.gschema.xml \
- schema-tests/bad-key3.gschema.xml \
- schema-tests/bad-key4.gschema.xml \
- schema-tests/empty-key.gschema.xml
-
+EXTRA_DIST += \
+ socket-common.c \
+ org.gtk.test.gschema \
+ org.gtk.test.gschema.xml \
+ de.po \
+ schema-tests/bad-type.gschema.xml \
+ schema-tests/incomplete-list.gschema.xml \
+ schema-tests/missing-quotes.gschema.xml \
+ schema-tests/no-default.gschema.xml \
+ schema-tests/wrong-category.gschema.xml \
+ schema-tests/overflow.gschema.xml \
+ schema-tests/bad-key.gschema.xml \
+ schema-tests/bad-key2.gschema.xml \
+ schema-tests/bad-key3.gschema.xml \
+ schema-tests/bad-key4.gschema.xml \
+ schema-tests/empty-key.gschema.xml \
+ schema-tests/array-default-not-in-choices.gschema.xml \
+ schema-tests/bad-type.gschema.xml \
+ schema-tests/choice-missing-value.gschema.xml \
+ schema-tests/choices-wrong-type.gschema.xml \
+ schema-tests/default-not-in-choices.gschema.xml \
+ schema-tests/default-out-of-range.gschema.xml \
+ schema-tests/incomplete-list.gschema.xml \
+ schema-tests/missing-quotes.gschema.xml \
+ schema-tests/no-default.gschema.xml \
+ schema-tests/overflow.gschema.xml \
+ schema-tests/range-missing-max.gschema.xml \
+ schema-tests/range-missing-min.gschema.xml \
+ schema-tests/range-wrong-type.gschema.xml \
+ schema-tests/wrong-category.gschema.xml
+
MISC_STUFF = gschemas.compiled test.mo
test.mo: de.po
diff --git a/gio/tests/gschema-compile.c b/gio/tests/gschema-compile.c
index 67dbc17..81ae4b7 100644
--- a/gio/tests/gschema-compile.c
+++ b/gio/tests/gschema-compile.c
@@ -42,22 +42,30 @@ test_schema (gpointer data)
}
static const SchemaTest tests[] = {
- { "no-default", NULL, "*<default> is required in <key>*" },
- { "missing-quotes", NULL, "*unknown keyword*" },
- { "incomplete-list", NULL, "*to follow array element*" },
- { "wrong-category", NULL, "*attribute 'l10n' invalid*" },
- { "bad-type", NULL, "*invalid GVariant type string*" },
- { "overflow", NULL, "*out of range*" },
- { "bad-key", NULL, "*invalid name*" },
- { "bad-key", "--allow-any-name", NULL },
- { "bad-key2", NULL, "*invalid name*" },
- { "bad-key2", "--allow-any-name", NULL },
- { "bad-key3", NULL, "*invalid name*" },
- { "bad-key3", "--allow-any-name", NULL },
- { "bad-key4", NULL, "*invalid name*" },
- { "bad-key4", "--allow-any-name", NULL },
- { "empty-key", NULL, "*empty names*" },
- { "empty-key", "--allow-any-name", "*empty names*" },
+ { "no-default", NULL, "*<default> is required in <key>*" },
+ { "missing-quotes", NULL, "*unknown keyword*" },
+ { "incomplete-list", NULL, "*to follow array element*" },
+ { "wrong-category", NULL, "*attribute 'l10n' invalid*" },
+ { "bad-type", NULL, "*invalid GVariant type string*" },
+ { "overflow", NULL, "*out of range*" },
+ { "range-wrong-type", NULL, "*<range> not allowed for keys of type*" },
+ { "range-missing-min", NULL, "*element 'range' requires attribute 'min'*" },
+ { "range-missing-max", NULL, "*element 'range' requires attribute 'max'*" },
+ { "default-out-of-range", NULL, "*<default> is not contained in the specified range*" },
+ { "choices-wrong-type", NULL, "*<choices> not allowed for keys of type*" },
+ { "choice-missing-value", NULL, "*element 'choice' requires attribute 'value'*" },
+ { "default-not-in-choices", NULL, "*<default> contains string not in <choices>*" },
+ { "array-default-not-in-choices", NULL, "*<default> contains string not in <choices>*" },
+ { "bad-key", NULL, "*invalid name*" },
+ { "bad-key", "--allow-any-name", NULL },
+ { "bad-key2", NULL, "*invalid name*" },
+ { "bad-key2", "--allow-any-name", NULL },
+ { "bad-key3", NULL, "*invalid name*" },
+ { "bad-key3", "--allow-any-name", NULL },
+ { "bad-key4", NULL, "*invalid name*" },
+ { "bad-key4", "--allow-any-name", NULL },
+ { "empty-key", NULL, "*empty names*" },
+ { "empty-key", "--allow-any-name", "*empty names*" }
};
int
diff --git a/gio/tests/schema-tests/array-default-not-in-choices.gschema.xml b/gio/tests/schema-tests/array-default-not-in-choices.gschema.xml
new file mode 100644
index 0000000..b6fffc6
--- /dev/null
+++ b/gio/tests/schema-tests/array-default-not-in-choices.gschema.xml
@@ -0,0 +1,11 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="as">
+ <choices>
+ <choice value="first" />
+ <choice value="last" />
+ </choices>
+ <default>["first","last","second"]</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/choice-missing-value.gschema.xml b/gio/tests/schema-tests/choice-missing-value.gschema.xml
new file mode 100644
index 0000000..d900fc5
--- /dev/null
+++ b/gio/tests/schema-tests/choice-missing-value.gschema.xml
@@ -0,0 +1,10 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="s">
+ <choices>
+ <choice />
+ </choices>
+ <default>"a"</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/choices-wrong-type.gschema.xml b/gio/tests/schema-tests/choices-wrong-type.gschema.xml
new file mode 100644
index 0000000..7e6f14c
--- /dev/null
+++ b/gio/tests/schema-tests/choices-wrong-type.gschema.xml
@@ -0,0 +1,8 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="(is)">
+ <choices />
+ <default>(1,"a")</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/default-not-in-choices.gschema.xml b/gio/tests/schema-tests/default-not-in-choices.gschema.xml
new file mode 100644
index 0000000..ec4a08d
--- /dev/null
+++ b/gio/tests/schema-tests/default-not-in-choices.gschema.xml
@@ -0,0 +1,11 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="s">
+ <choices>
+ <choice value="first" />
+ <choice value="last" />
+ </choices>
+ <default>"next-to-last"</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/default-out-of-range.gschema.xml b/gio/tests/schema-tests/default-out-of-range.gschema.xml
new file mode 100644
index 0000000..8b3cbd3
--- /dev/null
+++ b/gio/tests/schema-tests/default-out-of-range.gschema.xml
@@ -0,0 +1,8 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="i">
+ <range min="0" max="100" />
+ <default>-1</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/range-missing-max.gschema.xml b/gio/tests/schema-tests/range-missing-max.gschema.xml
new file mode 100644
index 0000000..8e8bd55
--- /dev/null
+++ b/gio/tests/schema-tests/range-missing-max.gschema.xml
@@ -0,0 +1,8 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="i">
+ <range min="100" />
+ <default>2</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/range-missing-min.gschema.xml b/gio/tests/schema-tests/range-missing-min.gschema.xml
new file mode 100644
index 0000000..f4de90c
--- /dev/null
+++ b/gio/tests/schema-tests/range-missing-min.gschema.xml
@@ -0,0 +1,8 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="i">
+ <range max="100" />
+ <default>2</default>
+ </key>
+ </schema>
+</schemalist>
diff --git a/gio/tests/schema-tests/range-wrong-type.gschema.xml b/gio/tests/schema-tests/range-wrong-type.gschema.xml
new file mode 100644
index 0000000..033767f
--- /dev/null
+++ b/gio/tests/schema-tests/range-wrong-type.gschema.xml
@@ -0,0 +1,8 @@
+<schemalist>
+ <schema id="test">
+ <key name="test" type="s">
+ <range min="a" max="z" />
+ <default>"a"</default>
+ </key>
+ </schema>
+</schemalist>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]