Jesse Vincent
b71ed0cdad
'build' now has a proper dependency on generate-testcase.
3 years ago
Jesse Vincent
65dd53ba17
We now run 'generate-testcase' as part of the build process
3 years ago
Jesse Vincent
d132ad2446
move cmake-clean rule up in the file for clarity
3 years ago
Jesse Vincent
968f2cbb1a
enable cccache for cmake
3 years ago
Jesse Vincent
784dd83167
Clean up cmake invocation to not require a directory change and not fail
...
if the build directory exists
3 years ago
Jesse Vincent
89678327a4
Reformat some testing rules for clarity
3 years ago
Jesse Vincent
7cb1e225b7
Make it possible to make some test rules a little quieter
3 years ago
Michael Richters
e5d67efd58
Format codebase with `clang-format`
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Jesse Vincent
7a9588e404
Force ccache on for simulator tests
3 years ago
Jesse Vincent
dbeed3c767
Apply some of our makefile optimization techniques to the test suite
3 years ago
Jesse Vincent
275d45f479
Hotfix for the macos compiler fixes for the virtual platform
3 years ago
Michael Richters
3d3b531571
Update MouseKeys testcase for current KeyboardioHID ( #1129 )
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
06196fb20b
Restructure MouseKeys to be aware of Macros virtual keys ( #1114 )
3 years ago
Michael Richters
f47c750681
Stop using deprecated Leader variable `time_out`
...
Replaced with the new `setTimeout()` function call.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
3204034089
Fix overridable `OneShot.isStickable(key)` function
...
Now that it's not a `static` class function, we need to use a different
invocation, and we can't declare `isStickableDefault()` with the `always_inline`
attribute, or the user's override won't be able to call it because there will be
nothing to link to.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
46311f0a64
Add MouseKeys basic testcase
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
38988df273
Update TapDance hold timeout testcase
...
This testcase is for a version of TapDance that distinguishes between a "tap"
timeout and a "hold" timeout, allowing for two different `Key` values for the
same tap count.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
ebad8940fb
Add testcases for ShiftBlocker example plugin
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
e31fe2be10
Add Qukeys testcase for #1107
...
This is closer to a real-world scenario than the QueueLeaker plugin testcase.
It doesn't test the bug as deliberately, but it shows the failure of Qukeys
prior to the fix.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
b68ea18212
Reduce code repetition in testcase for #1107
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
ca1e23093e
Move QueueLeaker plugin testcases to a separate directory
...
This makes room for a Qukeys testcase that also triggers the bug.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Michael Richters
4480b08b2d
Add testcase for KeyAddrEventQueue bounds checking failure
...
`KeyAddrEventQueue::remove()` fails to confirm that the current queue is empty
before decrementing the length and shifting entries in the queue arrays. If
`remove()` or `shift()` is called when the queue is empty, `length_` gets
decremented from 0 to 255 (because it's unsigned), and then a large section of
memory gets shifted, mostly out of bounds of the event queue arrays, and
probably wreaking havoc with any number of things.
The plugin in this testcase should trigger this bug, and is detectable because
it affects the value for the current time. It's not guaranteed to detect this
bug, but it seems to be fairly consistent.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
3 years ago
Florian Bruhin
4a6aea650d
Add keyIsInjected helper
...
So that the bits don't have to be masked and checked manually, like with the other helpers.
Signed-off-by: Florian Bruhin <me@the-compiler.org>
3 years ago
Michael Richters
d1d8d5a41c
Update testcase for cancelled AutoShift
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
23a45c9502
Add testcase for issue #1074
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
537f73792f
Add testcases for CharShift plugin
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
d400c9bad9
Update key ranges stability testcase for CharShift keys
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
9f65e808c0
Add override of OneShot.isStickable() to testcase
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
25c975eae7
Add testcase for issue 1061
...
This is a demonstration that another plugin can use the new public OneShot
methods to turn a non-OneShot key into a OneShot.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
d0b6f5a21b
Add Kaleidoscope-OneShotMetaKeys plugin
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
d32a688698
Add testcases for issues reported to Chrysalis
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
d9d8e8bc21
Add testcase for issue 984
...
Closes #984
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Gergely Nagy
72d4ac8124
Merge pull request #1036 from gedankenexperimenter/plugin/autoshift
...
Add AutoShift plugin
4 years ago
Gergely Nagy
a1abdf0b83
Merge pull request #1037 from gedankenexperimenter/spacecadet-no-delay
...
Add SpaceCadet "no-delay" mode
4 years ago
Gergely Nagy
f4de545390
Merge pull request #1035 from gedankenexperimenter/hook/afterReportingState
...
Add `afterReportingState()` event handler
4 years ago
Gergely Nagy
ad30958deb
Merge pull request #1041 from gedankenexperimenter/tests/oneshot-key-ranges
...
Add missing checks for new OneShot key ranges
4 years ago
Michael Richters
e334be135d
Add testcase for OneShot/TapDance/Macros compatibility
...
OneShot keys should apply to all the key events generated by a Macros key, not
just the first one, even if the Macros key is injected by TapDance.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
c9a98ecb26
Add testcases for issue #423
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
a8d1c26170
Add basic testcases for AutoShift plugin
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
e2f710abee
Add testcase for issue 1032
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
5ddd7d1867
Add testcase for issue #1042
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
904083806f
Add missing checks for new OneShot key ranges
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
68d5fa80d1
Add testcases for SpaceCadet in "no-delay" mode
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Jesse Vincent
cf826188a4
Merge pull request #1030 from gedankenexperimenter/timeout-check-fix
4 years ago
Michael Richters
ed3b9205c5
Remove timeout padding from existing testcases
...
Now that the timeout checker has been fixed, we need to remove the extra 1
millisecond from testcases that verify timeouts.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
c60dd9526d
Add testcase for issue #673
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
1416bdb4c8
Add testcase for issue #571
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
5b45092221
Add SpaceCadet testcase for issue #484
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
b84d82bdb1
Add Leader testcases, including for issue #407
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
67bf76a99a
Simplify and standardize some testcases
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago