[gtk/matthiasc/for-master: 145/145] Add more shortcuts trigger tests
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/matthiasc/for-master: 145/145] Add more shortcuts trigger tests
- Date: Thu, 26 Mar 2020 18:55:24 +0000 (UTC)
commit 4560724d79e1b68763084635cd489d50c0a556fe
Author: Matthias Clasen <mclasen redhat com>
Date: Thu Mar 26 14:53:40 2020 -0400
Add more shortcuts trigger tests
Test parsing mnemonic triggers too.
testsuite/gtk/shortcuts.c | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)
---
diff --git a/testsuite/gtk/shortcuts.c b/testsuite/gtk/shortcuts.c
index 27df0c839e..6f3f37bd44 100644
--- a/testsuite/gtk/shortcuts.c
+++ b/testsuite/gtk/shortcuts.c
@@ -155,15 +155,18 @@ test_trigger_parse (void)
{
struct {
const char *str;
+ GType type;
GdkModifierType modifiers;
guint keyval;
} tests[] = {
- { "<Primary><Alt>z", GDK_CONTROL_MASK|GDK_MOD1_MASK, 'z' },
- { "<Control>U", GDK_CONTROL_MASK, 'u' },
- { "<Hyper>x", GDK_HYPER_MASK, 'x' },
- { "<Meta>y", GDK_META_MASK, 'y' },
- { "KP_7", 0, GDK_KEY_KP_7 },
- { "<Shift>exclam", GDK_SHIFT_MASK, '!' },
+ { "<Primary><Alt>z", GTK_TYPE_KEYVAL_TRIGGER, GDK_CONTROL_MASK|GDK_MOD1_MASK, 'z' },
+ { "<Control>U", GTK_TYPE_KEYVAL_TRIGGER, GDK_CONTROL_MASK, 'u' },
+ { "<Hyper>x", GTK_TYPE_KEYVAL_TRIGGER, GDK_HYPER_MASK, 'x' },
+ { "<Meta>y", GTK_TYPE_KEYVAL_TRIGGER, GDK_META_MASK, 'y' },
+ { "KP_7", GTK_TYPE_KEYVAL_TRIGGER, 0, GDK_KEY_KP_7 },
+ { "<Shift>exclam", GTK_TYPE_KEYVAL_TRIGGER, GDK_SHIFT_MASK, '!' },
+ { "_a", GTK_TYPE_MNEMONIC_TRIGGER, 0, 'a' },
+ { "_A", GTK_TYPE_MNEMONIC_TRIGGER, 0, 'a' },
};
GtkShortcutTrigger *trigger;
int i;
@@ -172,9 +175,17 @@ test_trigger_parse (void)
{
trigger = gtk_shortcut_trigger_parse_string (tests[i].str);
- g_assert_true (GTK_IS_KEYVAL_TRIGGER (trigger));
- g_assert_cmpint (gtk_keyval_trigger_get_modifiers (GTK_KEYVAL_TRIGGER (trigger)), ==,
tests[i].modifiers);
- g_assert_cmpuint (gtk_keyval_trigger_get_keyval (GTK_KEYVAL_TRIGGER (trigger)), ==, tests[i].keyval);
+ g_assert_cmpint (G_OBJECT_TYPE (trigger), ==, tests[i].type);
+
+ if (GTK_IS_KEYVAL_TRIGGER (trigger))
+ {
+ g_assert_cmpint (gtk_keyval_trigger_get_modifiers (GTK_KEYVAL_TRIGGER (trigger)), ==,
tests[i].modifiers);
+ g_assert_cmpuint (gtk_keyval_trigger_get_keyval (GTK_KEYVAL_TRIGGER (trigger)), ==,
tests[i].keyval);
+ }
+ else if (GTK_IS_MNEMONIC_TRIGGER (trigger))
+ {
+ g_assert_cmpuint (gtk_mnemonic_trigger_get_keyval (GTK_MNEMONIC_TRIGGER (trigger)), ==,
tests[i].keyval);
+ }
g_object_unref (trigger);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]