|
|
21255d |
From 3d08c7971a80370f60dd14b068779851e0f82c24 Mon Sep 17 00:00:00 2001
|
|
|
21255d |
From: Lennart Poettering <lennart@poettering.net>
|
|
|
21255d |
Date: Thu, 30 Apr 2020 18:32:55 +0200
|
|
|
21255d |
Subject: [PATCH] test: add test case for locale_is_installed()
|
|
|
21255d |
|
|
|
21255d |
(cherry picked from commit b45b0a69bb7ef3e6e66d443eae366b6d1c387cab)
|
|
|
21255d |
|
|
|
21255d |
Related: #1755287
|
|
|
21255d |
---
|
|
|
21255d |
src/test/test-locale-util.c | 23 +++++++++++++++++++++++
|
|
|
21255d |
1 file changed, 23 insertions(+)
|
|
|
21255d |
|
|
|
21255d |
diff --git a/src/test/test-locale-util.c b/src/test/test-locale-util.c
|
|
|
21255d |
index 0c3f6a62ed..0d50c33ce5 100644
|
|
|
21255d |
--- a/src/test/test-locale-util.c
|
|
|
21255d |
+++ b/src/test/test-locale-util.c
|
|
|
21255d |
@@ -34,6 +34,28 @@ static void test_locale_is_valid(void) {
|
|
|
21255d |
assert_se(!locale_is_valid("\x01gar\x02 bage\x03"));
|
|
|
21255d |
}
|
|
|
21255d |
|
|
|
21255d |
+static void test_locale_is_installed(void) {
|
|
|
21255d |
+ log_info("/* %s */", __func__);
|
|
|
21255d |
+
|
|
|
21255d |
+ /* Always available */
|
|
|
21255d |
+ assert_se(locale_is_installed("POSIX") > 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("C") > 0);
|
|
|
21255d |
+
|
|
|
21255d |
+ /* Might, or might not be installed. */
|
|
|
21255d |
+ assert_se(locale_is_installed("en_EN.utf8") >= 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("fr_FR.utf8") >= 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("fr_FR@euro") >= 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("fi_FI") >= 0);
|
|
|
21255d |
+
|
|
|
21255d |
+ /* Definitely not valid */
|
|
|
21255d |
+ assert_se(locale_is_installed("") == 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("/usr/bin/foo") == 0);
|
|
|
21255d |
+ assert_se(locale_is_installed("\x01gar\x02 bage\x03") == 0);
|
|
|
21255d |
+
|
|
|
21255d |
+ /* Definitely not installed */
|
|
|
21255d |
+ assert_se(locale_is_installed("zz_ZZ") == 0);
|
|
|
21255d |
+}
|
|
|
21255d |
+
|
|
|
21255d |
static void test_keymaps(void) {
|
|
|
21255d |
_cleanup_strv_free_ char **kmaps = NULL;
|
|
|
21255d |
char **p;
|
|
|
21255d |
@@ -95,6 +117,7 @@ static void dump_special_glyphs(void) {
|
|
|
21255d |
int main(int argc, char *argv[]) {
|
|
|
21255d |
test_get_locales();
|
|
|
21255d |
test_locale_is_valid();
|
|
|
21255d |
+ test_locale_is_installed();
|
|
|
21255d |
test_keymaps();
|
|
|
21255d |
|
|
|
21255d |
dump_special_glyphs();
|