zmk/docs/docs/development/tests.md
jmding8 19ee7849f8
feat(behaviors) Required keys for tap-hold behaviors
* Add optional `hold-trigger-key-positions` hold-tap configuration
* Leverage configuration for decision making around when to trigger
  hold decision in hold-taps.
* Add docs for new configuration.
* Tests for the new config/decision logic.
2021-11-01 12:37:20 -04:00

1.2 KiB

title sidebar_label
Tests Tests
  • Running tests requires native posix support.
  • Any folder under /app/tests containing native_posix.keymap will be selected when running west test.
  • Run tests from within the /zmk/app directory.
  • Run a single test with west test <testname>, like west test tests/toggle-layer/normal.

Creating a New Test Set

  1. Copy the test set that most closely resembles the tests you will be creating.
  2. Rename the newly created test set to the behavior you're testing e.g, toggle-layer
  3. Modify behavior_keymap.dtsi to create a keymap using the behavior and related behaviors
  4. Modify test_case/native_posix.keymap for a simulated use case
  5. Modify test_case/events.patterns to collect relevant logs to the test
  6. Modify test_case/keycode_events.snapshot for to include the expected output
  7. Rename the test_case folder to describe the test.
  8. Repeat steps 4 to 7 for every test case