From 16661b0cbe64855fdd9ffa6812210edd0aed3331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Sun, 23 Jul 2017 15:12:40 +0200 Subject: [PATCH] tests: display an error if the required locale en_US.UTF-8 is not installed --- tests/tests.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/tests/tests.cpp b/tests/tests.cpp index f863e2056..76ecb2132 100644 --- a/tests/tests.cpp +++ b/tests/tests.cpp @@ -47,6 +47,8 @@ extern "C" #include "CppUTest/CommandLineTestRunner.h" +#define LOCALE_TESTS "en_US.UTF-8" + /* import tests from libs */ IMPORT_TEST_GROUP(Plugins); IMPORT_TEST_GROUP(Arraylist); @@ -129,9 +131,19 @@ main (int argc, char *argv[]) struct t_gui_buffer *ptr_core_buffer; /* setup environment: English language, no specific timezone */ - setenv ("LC_ALL", "en_US.UTF-8", 1); + setenv ("LC_ALL", LOCALE_TESTS, 1); setenv ("TZ", "", 1); + /* check if locale exists */ + if (!setlocale (LC_ALL, "")) + { + fprintf (stderr, + "ERROR: the locale %s must be installed to run WeeChat " + "tests.\n", + LOCALE_TESTS); + return 1; + } + /* build arguments for WeeChat */ weechat_tests_args = getenv ("WEECHAT_TESTS_ARGS"); length = strlen (argv[0]) +