summaryrefslogtreecommitdiff
path: root/app/tests/to-layer/normal
diff options
context:
space:
mode:
Diffstat (limited to 'app/tests/to-layer/normal')
-rw-r--r--app/tests/to-layer/normal/events.patterns3
-rw-r--r--app/tests/to-layer/normal/keycode_events.snapshot18
-rw-r--r--app/tests/to-layer/normal/native_posix.keymap29
3 files changed, 50 insertions, 0 deletions
diff --git a/app/tests/to-layer/normal/events.patterns b/app/tests/to-layer/normal/events.patterns
new file mode 100644
index 0000000..fcebc4b
--- /dev/null
+++ b/app/tests/to-layer/normal/events.patterns
@@ -0,0 +1,3 @@
+s/.*hid_listener_keycode/kp/p
+s/.*to_keymap_binding/to/p
+s/.*layer_changed/layer_changed/p \ No newline at end of file
diff --git a/app/tests/to-layer/normal/keycode_events.snapshot b/app/tests/to-layer/normal/keycode_events.snapshot
new file mode 100644
index 0000000..930a977
--- /dev/null
+++ b/app/tests/to-layer/normal/keycode_events.snapshot
@@ -0,0 +1,18 @@
+kp_pressed: usage_page 0x07 keycode 0x16 mods 0x00
+kp_released: usage_page 0x07 keycode 0x16 mods 0x00
+to_pressed: position 1 layer 1
+layer_changed: layer 1 state 1
+to_released: position 1 layer 1
+kp_pressed: usage_page 0x07 keycode 0x0e mods 0x00
+kp_released: usage_page 0x07 keycode 0x0e mods 0x00
+to_pressed: position 0 layer 0
+layer_changed: layer 1 state 0
+layer_changed: layer 0 state 1
+to_released: position 0 layer 0
+kp_pressed: usage_page 0x07 keycode 0x16 mods 0x00
+kp_released: usage_page 0x07 keycode 0x16 mods 0x00
+to_pressed: position 0 layer 0
+to_released: position 0 layer 0
+to_pressed: position 1 layer 1
+layer_changed: layer 1 state 1
+to_released: position 1 layer 1
diff --git a/app/tests/to-layer/normal/native_posix.keymap b/app/tests/to-layer/normal/native_posix.keymap
new file mode 100644
index 0000000..056341f
--- /dev/null
+++ b/app/tests/to-layer/normal/native_posix.keymap
@@ -0,0 +1,29 @@
+#include <dt-bindings/zmk/keys.h>
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/kscan-mock.h>
+#include "../behavior_keymap.dtsi"
+
+// Press key A
+// To layer 1
+// Press key J
+// To layer 0
+// Press key S
+// To layer 0 -- does nothing
+
+&kscan {
+ events = <ZMK_MOCK_PRESS(1,1,10)
+ ZMK_MOCK_RELEASE(1,1,10)
+ ZMK_MOCK_PRESS(0,1,10)
+ ZMK_MOCK_RELEASE(0,1,10)
+ ZMK_MOCK_PRESS(1,1,10)
+ ZMK_MOCK_RELEASE(1,1,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ ZMK_MOCK_PRESS(1,1,10)
+ ZMK_MOCK_RELEASE(1,1,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ ZMK_MOCK_PRESS(0,1,10)
+ ZMK_MOCK_RELEASE(0,1,10)
+ >;
+}; \ No newline at end of file