When running the integration tests, we provide a test service that
replaces `keyman-system-service`. DBus needs the updated `.service`
files in the `services` directory so that it will use the test
service. This change outputs an error and returns an non-zero
exit code if it can't find the `services` directory, which usually
means that `keyman-system-service` didn't get build.
Some of the configuration files are useful for other distributions
as well. So this change moves them out of `debian/` to
`linux/keyman-config` so that they will be included in the source
tar ball.
Also remove zero-width space from one file.
Closes#8880.
Decided to use the name `baseline` for this set of tests. They can be
used by any project in the repo now. Tests will be treated as shared,
and not modified (except in the case of a buggy test).
* Moves .kmn files, add `&NAME` line (don't use meson templating for
these files)
* Generates reference .kmx files using kmcomp for use as a baseline with
kmcmplib (kmc) tests, and for linux tests
* Updates references in core, kmcmplib, and linux builds
* Renames all the .kmn / .kmx to use a standardized, clean name format
(this was needed for building packages in the core tests)
This change skips the four failing Wayland tests so that the builds
pass on CI. They will have to be re-enabled once Wayland support
is implemented (#4273).
Also remove `run-tests.sh` which got moved to `scripts/run-tests.sh`
but I forgot to delete the old one when I did the move.
- fix debug output in case surrounding-text is not supported
- conditionally set prefilter flag if ibus supports it. We can now
uncomment the check because beta branch got merged which added the
variable to autotools.
This change adds the upstream changes to ibusimcontext.c to our
test ibusimcontext.c file up to commit
506ac9993d5166196b7c4e9bfa9fb0f9d3792ffa plus our two prefilter
commits.
The name json.hpp conflicts with the JSON for Modern C++ library that
is also used by Developer. Renames json.hpp and json.cpp to jsonpp.hpp
and jsonpp.cpp aka "JSON Pretty Printer".
Debian reproducibility testing runs a slightly different package
build that seemingly doesn't set the `DEB_BUILD_MULTIARCH` variable.
This change introduces our own environment variable to detect
package builds so that we can skip the ibus-keyman integration
tests that require running an X server.
This change modifies the `run-tests.sh` script so that tests
run on both Wayland (if supported) and X11 unless
`--no-wayland` or `--no-x11` is specified.
This change also adds the new argument `--wayland` to the
`ibus-keyman-tests` executable which runs the tests under
Wayland.
Note that running Wayland tests is only possible in Ubuntu 21.10+
because it requires a version of `mutter` that supports the
headless option which got added in mutter 40.
This change will hopefully help some tests that occasionally fail
on TC. After setting the options during the test setup we sync the
settings before running the test scenario.
This also fixes a failing test (`048 - modifier keys keep context`)
if surrounding text is not supported. If the user presses the
capslock key we shouldn't reset the context if no rules match.
Fixes#5613.