]> granicus.if.org Git - llvm/commitdiff
Revert "[test] Use system locale for mri-utf8.test"
authorThomas Preud'homme <thomasp@graphcore.ai>
Thu, 10 Oct 2019 13:39:12 +0000 (13:39 +0000)
committerThomas Preud'homme <thomasp@graphcore.ai>
Thu, 10 Oct 2019 13:39:12 +0000 (13:39 +0000)
This reverts commit r374318 / b6f1d1fa0e3ee0e25f22414bf97c05276b934507.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@374349 91177308-0d34-0410-b5e6-96231b3b80d8

test/tools/llvm-ar/mri-nonascii.test [deleted file]
test/tools/llvm-ar/mri-utf8.test [new file with mode: 0644]

diff --git a/test/tools/llvm-ar/mri-nonascii.test b/test/tools/llvm-ar/mri-nonascii.test
deleted file mode 100644 (file)
index 7e92957..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# Test non-ascii archive members
-# XFAIL: system-darwin
-
-RUN: rm -rf %t && mkdir -p %t/extracted
-
-# Note: lit's Python will read this UTF-8 encoded mri-nonascii.txt file,
-# decode it to unicode. The filename in the redirection below will then
-# be encoded in the system's filename encoding (e.g. UTF-16 for
-# Microsoft Windows).
-RUN: echo "contents" > %t/£.txt
-
-RUN: echo "CREATE %t/mri.ar" > %t/script.mri
-RUN: echo "ADDMOD %t/£.txt" >> %t/script.mri
-RUN: echo "SAVE" >> %t/script.mri
-
-RUN: llvm-ar -M < %t/script.mri
-RUN: cd %t/extracted && llvm-ar x %t/mri.ar
-
-# Same as above.
-RUN: FileCheck --strict-whitespace %s <£.txt
-CHECK:{{^}}
-CHECK-SAME:{{^}}contents{{$}}
diff --git a/test/tools/llvm-ar/mri-utf8.test b/test/tools/llvm-ar/mri-utf8.test
new file mode 100644 (file)
index 0000000..e297dce
--- /dev/null
@@ -0,0 +1,23 @@
+# Test non-ascii archive members
+# XFAIL: system-darwin
+
+RUN: rm -rf %t && mkdir -p %t/extracted
+
+RUN: echo "contents" > %t/£.txt
+
+RUN: echo "CREATE %t/mri.ar" > %t/script.mri
+RUN: echo "ADDMOD %t/£.txt" >> %t/script.mri
+RUN: echo "SAVE" >> %t/script.mri
+
+RUN: llvm-ar -M < %t/script.mri
+RUN: cd %t/extracted && llvm-ar x %t/mri.ar
+
+# This works around problems launching processess that
+# include arguments with non-ascii characters.
+# Python on Linux defaults to ASCII encoding unless the
+# environment specifies otherwise, so it is explicitly set.
+# The reliance the test has on this locale is not ideal,
+# however alternate solutions have been difficult due to 
+# behaviour differences with python 2 vs python 3,
+# and linux vs windows.
+RUN: env LANG=en_US.UTF-8 %python -c "assert open(u'\U000000A3.txt', 'rb').read() == b'contents\n'"