summaryrefslogtreecommitdiff
path: root/app/tests/conditional-layer/mo-overlap/native_posix.keymap
diff options
context:
space:
mode:
authorJonathan Rascher <jon@bcat.name>2021-10-02 01:15:21 -0400
committerPete Johanson <peter@peterjohanson.com>2021-11-15 05:49:23 -0500
commit30ed2375335acf47da0216c6832ecfd30ea7097c (patch)
tree3afce67c523eab8f9e73b95c0adc6237f8f057a2 /app/tests/conditional-layer/mo-overlap/native_posix.keymap
parent6cd1734851c31884cdf14b40fddc5a9df273b296 (diff)
test(conditional-layers): Add tests for edge cases
Diffstat (limited to 'app/tests/conditional-layer/mo-overlap/native_posix.keymap')
-rw-r--r--app/tests/conditional-layer/mo-overlap/native_posix.keymap60
1 files changed, 60 insertions, 0 deletions
diff --git a/app/tests/conditional-layer/mo-overlap/native_posix.keymap b/app/tests/conditional-layer/mo-overlap/native_posix.keymap
new file mode 100644
index 0000000..1518fc8
--- /dev/null
+++ b/app/tests/conditional-layer/mo-overlap/native_posix.keymap
@@ -0,0 +1,60 @@
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/keys.h>
+#include <dt-bindings/zmk/kscan_mock.h>
+
+/ {
+ conditional_layers {
+ compatible = "zmk,conditional-layers";
+ tri_layer {
+ if-layers = <1 2>;
+ then-layer = <3>;
+ };
+ };
+
+ keymap {
+ compatible = "zmk,keymap";
+ default_layer {
+ bindings = <
+ &kp A &mo 3
+ &mo 1 &mo 2
+ >;
+ };
+ layer_1 {
+ bindings = <
+ &kp B &trans
+ &trans &trans
+ >;
+ };
+ layer_2 {
+ bindings = <
+ &kp C &trans
+ &trans &trans
+ >;
+ };
+ layer_3 {
+ bindings = <
+ &kp D &trans
+ &trans &trans
+ >;
+ };
+ };
+};
+
+&kscan {
+ events = <
+ ZMK_MOCK_PRESS(0,1,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ ZMK_MOCK_PRESS(1,0,10)
+ ZMK_MOCK_PRESS(1,1,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ ZMK_MOCK_RELEASE(1,1,10)
+ ZMK_MOCK_RELEASE(1,0,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ ZMK_MOCK_RELEASE(0,1,10)
+ ZMK_MOCK_PRESS(0,0,10)
+ ZMK_MOCK_RELEASE(0,0,10)
+ >;
+};