[unittests] Fix ExpandTilde test to match handling home dirs with trailing slash

The `expandTildeExpr` routine just replaces a tilde by a home dir path.
If the home dir has a trailing slash, the result of substitution will
contain double slashes. For example, `HOME=/foo/ ~/bar` gives `/foo//bar`.
That corresponds to (at least) Bash behaviour because the following
command `$HOME=/foo/ echo ~/bar` prints `/foo//bar`.

The `ExpandTilde` test constructs a path expected as the `fs::expand_tilde`
call result by calling `path::append` and the expected path has a single
slash. This patch fixes that and allows to pass the unittest on hosts where
the `HOME` is `/`.

Differential Revision: http://reviews.llvm.org/D54752

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347346 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Simon Atanasyan 2018-11-20 21:13:51 +00:00
parent 2bb2152d87
commit 85706895fb

View File

@ -543,11 +543,11 @@ TEST_F(FileSystemTest, ExpandTilde) {
fs::expand_tilde("~", Actual);
EXPECT_EQ(Expected, Actual);
path::append(Expected, "foo");
#ifdef _WIN32
Expected += "\\foo";
fs::expand_tilde("~\\foo", Actual);
#else
Expected += "/foo";
fs::expand_tilde("~/foo", Actual);
#endif