18d48cd60SZachary Turner #include "gtest/gtest.h"
28d48cd60SZachary Turner
3a6db4167STim Hammerquist #include "TestingSupport/MockTildeExpressionResolver.h"
48d48cd60SZachary Turner #include "lldb/Utility/TildeExpressionResolver.h"
58d48cd60SZachary Turner
68d48cd60SZachary Turner #include "llvm/ADT/SmallString.h"
78d48cd60SZachary Turner
88d48cd60SZachary Turner using namespace llvm;
98d48cd60SZachary Turner using namespace lldb_private;
108d48cd60SZachary Turner
TEST(TildeExpressionResolver,ResolveFullPath)118d48cd60SZachary Turner TEST(TildeExpressionResolver, ResolveFullPath) {
1272787ac6SJonas Devlieghere MockTildeExpressionResolver Resolver("James", "/james");
138d48cd60SZachary Turner Resolver.AddKnownUser("Kirk", "/kirk");
148d48cd60SZachary Turner Resolver.AddKnownUser("Lars", "/lars");
158d48cd60SZachary Turner Resolver.AddKnownUser("Jason", "/jason");
168d48cd60SZachary Turner Resolver.AddKnownUser("Larry", "/larry");
178d48cd60SZachary Turner
188d48cd60SZachary Turner SmallString<32> Result;
198d48cd60SZachary Turner ASSERT_TRUE(Resolver.ResolveFullPath("~", Result));
208d48cd60SZachary Turner EXPECT_EQ("/james", Result);
218d48cd60SZachary Turner ASSERT_TRUE(Resolver.ResolveFullPath("~/", Result));
228d48cd60SZachary Turner EXPECT_EQ("/james/", Result);
238d48cd60SZachary Turner
248d48cd60SZachary Turner ASSERT_TRUE(Resolver.ResolveFullPath("~James/bar/baz", Result));
258d48cd60SZachary Turner EXPECT_EQ("/james/bar/baz", Result);
268d48cd60SZachary Turner
278d48cd60SZachary Turner ASSERT_TRUE(Resolver.ResolveFullPath("~Jason/", Result));
288d48cd60SZachary Turner EXPECT_EQ("/jason/", Result);
298d48cd60SZachary Turner
308d48cd60SZachary Turner ASSERT_TRUE(Resolver.ResolveFullPath("~Lars", Result));
318d48cd60SZachary Turner EXPECT_EQ("/lars", Result);
328d48cd60SZachary Turner
338d48cd60SZachary Turner ASSERT_FALSE(Resolver.ResolveFullPath("~Jaso", Result));
34*dcdd231dSJonas Devlieghere EXPECT_EQ("~Jaso", Result);
358d48cd60SZachary Turner ASSERT_FALSE(Resolver.ResolveFullPath("", Result));
36*dcdd231dSJonas Devlieghere EXPECT_EQ("", Result);
378d48cd60SZachary Turner ASSERT_FALSE(Resolver.ResolveFullPath("Jason", Result));
38*dcdd231dSJonas Devlieghere EXPECT_EQ("Jason", Result);
398d48cd60SZachary Turner }
40