diff --git a/llvm/test/tools/llvm-ar/mri-nonascii.test b/llvm/test/tools/llvm-ar/mri-nonascii.test new file mode 100644 --- /dev/null +++ b/llvm/test/tools/llvm-ar/mri-nonascii.test @@ -0,0 +1,22 @@ +# 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/llvm/test/tools/llvm-ar/mri-utf8.test b/llvm/test/tools/llvm-ar/mri-utf8.test deleted file mode 100644 --- a/llvm/test/tools/llvm-ar/mri-utf8.test +++ /dev/null @@ -1,23 +0,0 @@ -# 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'"