summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/docs/dev-tests.md20
-rw-r--r--docs/sidebars.js1
2 files changed, 21 insertions, 0 deletions
diff --git a/docs/docs/dev-tests.md b/docs/docs/dev-tests.md
new file mode 100644
index 0000000..68d4725
--- /dev/null
+++ b/docs/docs/dev-tests.md
@@ -0,0 +1,20 @@
+---
+id: dev-tests
+title: Tests
+sidebar_label: Tests
+---
+
+Running tests requires [native posix support](./dev-posix-board). Any folder under `/app/tests`
+containing `native_posix.keymap` will be selected when running `./run-test.sh all`.
+
+## 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
+ - See: [sed manual](https://www.gnu.org/software/sed/manual/sed.html) and
+ [tutorial](https://www.digitalocean.com/community/tutorials/the-basics-of-using-the-sed-stream-editor-to-manipulate-text-in-linux)
+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 \ No newline at end of file
diff --git a/docs/sidebars.js b/docs/sidebars.js
index 51313fc..d426667 100644
--- a/docs/sidebars.js
+++ b/docs/sidebars.js
@@ -20,6 +20,7 @@ module.exports = {
"dev-setup",
"dev-boards-shields-keymaps",
"dev-posix-board",
+ "dev-tests",
],
"Dev Guides": ["dev-guide-new-shield", "dev-guide-usb-logging"],
},