test/xkeyboard-config-test.py.in


Log

Author Commit Date CI Message
Ran Benita 3515ba19 2019-11-01T10:45:43 test: xkeyboard-config: bring back the progress bar Signed-off-by: Ran Benita <ran@unusedvar.com>
Peter Hutterer 8f93e22a 2019-11-01T18:41:16 test: xkeyboard-config: invoke the python3 command (#120) python3 is always python3, but python could be python2 in some cases. Or just missing (e.g. RHEL8). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 0609073c 2019-11-01T11:09:16 test: xkeyboard-config: add missing variant tests Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer f4a0f738 2019-11-01T09:54:29 test: xkeyboard-config: use universal_newlines instead of decode This way stdin/stdout of the process are opened in text mode and we don't need manually decode. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 7832cc72 2019-10-30T12:03:48 test: xkeyboard-config: flake8 fixes Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer cd5a24aa 2019-10-30T11:22:49 test: xkeyboard-config: handle keyboard interrupts correctly In python multiprocessing, each process needs to handle (and ignore) the KeyboardInterrupt to avoid exception logging. This is a separate patch for easier reviewing, the first hunks merely re-indent all of the xkbcommontool/xkbcomp functions into a try/except KeyboardInterrupt block. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 9fc0cb87 2019-10-30T10:53:58 test: xkeyboard-config: print to stderr on failure, stdout otherwise This is a change in behavior and requires any automated callers to adjust accordingly. Still, much easier to get the errors that way rather than it being mixed into a thousands-of-lines output file. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer f5383847 2019-10-29T16:06:10 test: xkeyboard-config: add a multiprocessing.Pool() to speed up the test Collect all options into a dictionary, then process that as async actions through a process pool. This of course requires collecting the various print statements to avoid mangled output. This dropped the time to completion from around 14 min to 8 min on my local machine (unscientific single run only for the original timing). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 1e131906 2019-10-30T11:15:49 test: xkeyboard-config: use argparse for the path and the tool selection Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer d1cb8ad4 2018-08-14T11:16:30 test: add a tool to test-compile all LVO combinations from xkeyboard-config This test contains of two parts: - a simple program to convert RMLVO commandline arguments into a keymap (and print that keymap if requested). - a python script that runs through rules/evdev.xml, and tries to compile a keymap for sort-of every layout/variant/option combination. Sort-of, because we can have multiple options and it really only does one per layout(variant) combination. Same thing can be done using xkbcomp, but right now it doesn't take that as argument, it's hard-coded. This takes quite a while, installing python-tqdm is recommended to see fancy progress bars instead of just miles of dumps. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>