aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir/test_environ.vim
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2020-09-28 20:20:48 -0400
committerGitHub <noreply@github.com>2020-09-28 20:20:48 -0400
commit6f2138eb03766680b012ee0bdfca04fdc2c22e89 (patch)
treee551c39c7cf8ea912f9669936e0bb30ff6658433 /src/nvim/testdir/test_environ.vim
parentf520c1ef859b245c9932106b5487d55c984d410d (diff)
downloadrneovim-6f2138eb03766680b012ee0bdfca04fdc2c22e89.tar.gz
rneovim-6f2138eb03766680b012ee0bdfca04fdc2c22e89.tar.bz2
rneovim-6f2138eb03766680b012ee0bdfca04fdc2c22e89.zip
vim-patch:8.2.1757: Mac: default locale is lacking the encoding (#12994)
vim-patch:8.2.1757: Mac: default locale is lacking the encoding Problem: Mac: default locale is lacking the encoding. Solution: Add ".UTF-8 to the locale. (Yee Cheng Chin, closes vim/vim#7022) https://github.com/vim/vim/commit/a5fe91e6dc610bc823bc3201e2c88179989b13fb Cherry-pick test_environ.vim changes from patch 8.2.1432.
Diffstat (limited to 'src/nvim/testdir/test_environ.vim')
-rw-r--r--src/nvim/testdir/test_environ.vim25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_environ.vim b/src/nvim/testdir/test_environ.vim
index 21bb09a690..a25d83753c 100644
--- a/src/nvim/testdir/test_environ.vim
+++ b/src/nvim/testdir/test_environ.vim
@@ -1,5 +1,9 @@
+" Test for environment variables.
+
scriptencoding utf-8
+source check.vim
+
func Test_environ()
unlet! $TESTENV
call assert_equal(0, has_key(environ(), 'TESTENV'))
@@ -42,3 +46,24 @@ func Test_external_env()
endif
call assert_equal('', result)
endfunc
+
+func Test_mac_locale()
+ CheckFeature osxdarwin
+
+ " If $LANG is not set then the system locale will be used.
+ " Run Vim after unsetting all the locale environmental vars, and capture the
+ " output of :lang.
+ let lang_results = system("unset LANG; unset LC_MESSAGES; " ..
+ \ shellescape(v:progpath) ..
+ \ " --clean -esX -c 'redir @a' -c 'lang' -c 'put a' -c 'print' -c 'qa!' ")
+
+ " Check that:
+ " 1. The locale is the form of <locale>.UTF-8.
+ " 2. Check that fourth item (LC_NUMERIC) is properly set to "C".
+ " Example match: "en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8"
+ call assert_match('"\([a-zA-Z_]\+\.UTF-8/\)\{3}C\(/[a-zA-Z_]\+\.UTF-8\)\{2}"',
+ \ lang_results,
+ \ "Default locale should have UTF-8 encoding set, and LC_NUMERIC set to 'C'")
+endfunc
+
+" vim: shiftwidth=2 sts=2 expandtab