[Libosinfo] [PATCH osinfo-db 3/3] tests: conftest: set locale in test code
Daniel P. Berrangé
berrange at redhat.com
Fri Mar 29 09:52:00 UTC 2019
On Thu, Mar 28, 2019 at 04:55:34PM -0400, Cole Robinson wrote:
> This fixes the locale setup with direct pytest-3 invocations
>
> Signed-off-by: Cole Robinson <crobinso at redhat.com>
> ---
> Makefile | 2 +-
> tests/conftest.py | 4 ++++
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Makefile b/Makefile
> index b3e06d5..4f6f8d4 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -121,4 +121,4 @@ update-po:
> done
>
> check: $(DATA_FILES) $(SCHEMA_FILES)
> - LC_ALL= LANG=C LC_CTYPE=en_US.UTF-8 $(PYTHON) -m pytest
> + $(PYTHON) -m pytest
> diff --git a/tests/conftest.py b/tests/conftest.py
> index 4a16a04..ade36c5 100644
> --- a/tests/conftest.py
> +++ b/tests/conftest.py
> @@ -1,6 +1,7 @@
> # This work is licensed under the GNU GPLv2 or later.
> # See the COPYING file in the top-level directory.
>
> +import locale
> import os
>
>
> @@ -16,6 +17,9 @@ def pytest_configure(config):
> os.environ[key] = os.path.realpath(os.path.join(
> os.path.dirname(__file__), "..", "data"))
>
> + # Needed for test reproducibility on freebsd
> + locale.setlocale(locale.LC_CTYPE, 'en_US.UTF-8')
This doesn't actually do the same as the makefile code. This still uses
the user's own locale for everything that isn't LC_CTYPE. The make code
explicitly forced C locale to ensure reproducable environment that does
not vary per user locale.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
More information about the Libosinfo
mailing list