|
f60bdb16
|
2021-04-20T12:21:28
|
|
test: add extra info to the layout-tester --help output
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
be520ef9
|
2021-04-16T09:24:20
|
|
test: print the layout-tester progress bar to stdout by default
tqdm prints to stderr by default but we're using that for failed keymap
compiles (which are the ones that really matter). Plus, whether we're using tqdm
is dependent on isatty(sys.stdout) anyway.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
efa58050
|
2021-04-16T07:42:27
|
|
test: add an LVO argument to the XKB layout tester
Slightly easier to debug if we can have it only parse one single layout.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
a955dca3
|
2021-04-15T11:07:33
|
|
test: print the compiled keymaps to a given directory
With --keymap-output-dir, the given directory will contain a list of files named
after the layout + variant ('us', 'us(euro)', ...) that contain the keymaps for
each variant + option combination compiled.
This is still a lot, but better to sift through hundreds of keymaps than tens of
thousands.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
1cae2500
|
2021-04-15T10:39:05
|
|
test: rework the output for the xkeyboard-config layout tester
The previous output is largely unusable. The result in the CI test runs is a 6GB
file with every compiled keymap in it and while we can grep for ERROR, it's not
particularly useful.
Let's change this and print out YAML instead - that can be machine-processed.
This patch adds a new parent class that prints itself in YAML format,
the tool invocations are child classes of that class. The result looks like this:
Example output:
- rmlvo: ["evdev", "pc105", "us", "haw", "grp:rwin_switch"]
cmd: "xkbcli-compile-keymap --verbose --rules evdev --model pc105 --layout us --variant haw --options grp:rwin_switch"
status: 0
- rmlvo: ["evdev", "pc105", "us", "foo", ""]
cmd: "xkbcli-compile-keymap --verbose --rules evdev --model pc105 --layout us --variant foo"
status: 1
error: "failed to compile keymap"
Special status codes are: 99 for "unrecognized keysym" and 90 for "Cannot open
display" in the setxkbmap case.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
44e8d4b0
|
2021-04-15T08:57:51
|
|
test: add proper --verbose handling to the xkeyboard-config tester
Instead of defaulting to verbose on/off depending on isatty, make it an
argument instead.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
6268ba1c
|
2020-10-19T11:51:27
|
|
test: catch unrecognized keysyms in the xkeyboard-config test
Prompted by
https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/merge_requests/127
We run the keymap tool with --verbose which will print the messages from the
compiler to the log file as well. And then we can search for the warning
regarding an unrecognized keysym and fail our test based on that.
|
|
9b9c5f20
|
2020-07-29T08:13:14
|
|
test: fix the xkeyboard-config test
'xkbcli compile-keymap' doesn't work unless we ninja install first. But for a
test that's to be run from the test directory, that's not a useful option so
let's call the binary directly. The script adds the meson builddir to the PATH
anyway.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
29e80e7b
|
2020-07-08T13:30:47
|
|
tools: install our tools as xkbcli subcommands
The xkbcli tool usage help is ifdef'd out where the tool isn't built but the
man page always includes all tools. Easier that way.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
43b9d092
|
2020-07-01T07:58:35
|
|
test: fix the xkeyboard-config test for the prefixed tool name
Regression introduced in 362130debb5d90d77f0d4f7549880b5f9699f647
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
3515ba19
|
2019-11-01T10:45:43
|
|
test: xkeyboard-config: bring back the progress bar
Signed-off-by: Ran Benita <ran@unusedvar.com>
|
|
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>
|
|
0609073c
|
2019-11-01T11:09:16
|
|
test: xkeyboard-config: add missing variant tests
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
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>
|
|
7832cc72
|
2019-10-30T12:03:48
|
|
test: xkeyboard-config: flake8 fixes
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|