<div dir="ltr">Instead of #if 0'ing them, I believe you can add _Disabled to the end of the name.  A common pattern is something like this:<div><br></div><div>#if LLVM_ON_WIN32</div><div>#define TestFunBlackslashes_Maybe  TestFunBlackslashes_Disabled</div><div>#else</div><div><div>#define TestFunBlackslashes_Maybe  TestFunBlackslashes</div>#endif</div><div>TEST_F(FileSpecTest, TestFunBackslashes_Maybe) {</div><div>}</div><div><br></div><div>You might need to check on the exact syntax, but that should get you pretty close.</div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Oct 28, 2016 at 4:37 AM Pavel Labath via lldb-commits <<a href="mailto:lldb-commits@lists.llvm.org">lldb-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: labath<br class="gmail_msg">
Date: Fri Oct 28 06:28:01 2016<br class="gmail_msg">
New Revision: 285393<br class="gmail_msg">
<br class="gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=285393&view=rev" rel="noreferrer" class="gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project?rev=285393&view=rev</a><br class="gmail_msg">
Log:<br class="gmail_msg">
Add a couple of fun unit tests for FileSpec::Equal<br class="gmail_msg">
<br class="gmail_msg">
Most of them fail right now and are commented out. The main problem is handling<br class="gmail_msg">
of backslashes on windows, but also the posix path code has a couple of issues.<br class="gmail_msg">
<br class="gmail_msg">
Modified:<br class="gmail_msg">
    lldb/trunk/unittests/Host/FileSpecTest.cpp<br class="gmail_msg">
<br class="gmail_msg">
Modified: lldb/trunk/unittests/Host/FileSpecTest.cpp<br class="gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Host/FileSpecTest.cpp?rev=285393&r1=285392&r2=285393&view=diff" rel="noreferrer" class="gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Host/FileSpecTest.cpp?rev=285393&r1=285392&r2=285393&view=diff</a><br class="gmail_msg">
==============================================================================<br class="gmail_msg">
--- lldb/trunk/unittests/Host/FileSpecTest.cpp (original)<br class="gmail_msg">
+++ lldb/trunk/unittests/Host/FileSpecTest.cpp Fri Oct 28 06:28:01 2016<br class="gmail_msg">
@@ -109,19 +109,92 @@ TEST(FileSpecTest, CopyByAppendingPathCo<br class="gmail_msg">
   EXPECT_STREQ("bar", fs.GetFilename().GetCString());<br class="gmail_msg">
 }<br class="gmail_msg">
<br class="gmail_msg">
-TEST(FileSpecTest, Equal) {<br class="gmail_msg">
+static void Compare(const FileSpec &one, const FileSpec &two, bool full_match,<br class="gmail_msg">
+                    bool remove_backup_dots, bool result) {<br class="gmail_msg">
+  EXPECT_EQ(result, FileSpec::Equal(one, two, full_match, remove_backup_dots))<br class="gmail_msg">
+      << "File one: " << one.GetCString() << "\nFile two: " << two.GetCString()<br class="gmail_msg">
+      << "\nFull match: " << full_match<br class="gmail_msg">
+      << "\nRemove backup dots: " << remove_backup_dots;<br class="gmail_msg">
+}<br class="gmail_msg">
+<br class="gmail_msg">
+TEST(FileSpecTest, EqualSeparator) {<br class="gmail_msg">
   FileSpec backward("C:\\foo\\bar", false, FileSpec::ePathSyntaxWindows);<br class="gmail_msg">
   FileSpec forward("C:/foo/bar", false, FileSpec::ePathSyntaxWindows);<br class="gmail_msg">
   EXPECT_EQ(forward, backward);<br class="gmail_msg">
<br class="gmail_msg">
   const bool full_match = true;<br class="gmail_msg">
   const bool remove_backup_dots = true;<br class="gmail_msg">
-  EXPECT_TRUE(<br class="gmail_msg">
-      FileSpec::Equal(forward, backward, full_match, remove_backup_dots));<br class="gmail_msg">
-  EXPECT_TRUE(<br class="gmail_msg">
-      FileSpec::Equal(forward, backward, full_match, !remove_backup_dots));<br class="gmail_msg">
-  EXPECT_TRUE(<br class="gmail_msg">
-      FileSpec::Equal(forward, backward, !full_match, remove_backup_dots));<br class="gmail_msg">
-  EXPECT_TRUE(<br class="gmail_msg">
-      FileSpec::Equal(forward, backward, !full_match, !remove_backup_dots));<br class="gmail_msg">
+  const bool match = true;<br class="gmail_msg">
+  Compare(forward, backward, full_match, remove_backup_dots, match);<br class="gmail_msg">
+  Compare(forward, backward, full_match, !remove_backup_dots, match);<br class="gmail_msg">
+  Compare(forward, backward, !full_match, remove_backup_dots, match);<br class="gmail_msg">
+  Compare(forward, backward, !full_match, !remove_backup_dots, match);<br class="gmail_msg">
+}<br class="gmail_msg">
+<br class="gmail_msg">
+#if 0<br class="gmail_msg">
+TEST(FileSpecTest, EqualDotsWindows) {<br class="gmail_msg">
+  const bool full_match = true;<br class="gmail_msg">
+  const bool remove_backup_dots = true;<br class="gmail_msg">
+  const bool match = true;<br class="gmail_msg">
+  std::pair<const char *, const char *> tests[] = {<br class="gmail_msg">
+      {R"(C:\foo\bar\baz)", R"(C:\foo\foo\..\bar\baz)"},<br class="gmail_msg">
+      {R"(C:\bar\baz)", R"(C:\foo\..\bar\baz)"},<br class="gmail_msg">
+      {R"(C:\bar\baz)", R"(C:/foo/../bar/baz)"},<br class="gmail_msg">
+      {R"(C:/bar/baz)", R"(C:\foo\..\bar\baz)"},<br class="gmail_msg">
+      {R"(C:\bar)", R"(C:\foo\..\bar)"},<br class="gmail_msg">
+  };<br class="gmail_msg">
+<br class="gmail_msg">
+  for(const auto &test: tests) {<br class="gmail_msg">
+    FileSpec one(test.first, false, FileSpec::ePathSyntaxWindows);<br class="gmail_msg">
+    FileSpec two(test.second, false, FileSpec::ePathSyntaxWindows);<br class="gmail_msg">
+    EXPECT_NE(one, two);<br class="gmail_msg">
+    Compare(one, two, full_match, remove_backup_dots, match);<br class="gmail_msg">
+    Compare(one, two, full_match, !remove_backup_dots, !match);<br class="gmail_msg">
+    Compare(one, two, !full_match, remove_backup_dots, match);<br class="gmail_msg">
+    Compare(one, two, !full_match, !remove_backup_dots, match);<br class="gmail_msg">
+  }<br class="gmail_msg">
+<br class="gmail_msg">
+}<br class="gmail_msg">
+#endif<br class="gmail_msg">
+<br class="gmail_msg">
+TEST(FileSpecTest, EqualDotsPosix) {<br class="gmail_msg">
+  const bool full_match = true;<br class="gmail_msg">
+  const bool remove_backup_dots = true;<br class="gmail_msg">
+  const bool match = true;<br class="gmail_msg">
+  std::pair<const char *, const char *> tests[] = {<br class="gmail_msg">
+      {R"(/foo/bar/baz)", R"(/foo/foo/../bar/baz)"},<br class="gmail_msg">
+      {R"(/bar/baz)", R"(/foo/../bar/baz)"},<br class="gmail_msg">
+//      {R"(/bar)", R"(/foo/../bar)"},<br class="gmail_msg">
+  };<br class="gmail_msg">
+<br class="gmail_msg">
+  for(const auto &test: tests) {<br class="gmail_msg">
+    FileSpec one(test.first, false, FileSpec::ePathSyntaxPosix);<br class="gmail_msg">
+    FileSpec two(test.second, false, FileSpec::ePathSyntaxPosix);<br class="gmail_msg">
+    EXPECT_NE(one, two);<br class="gmail_msg">
+    Compare(one, two, full_match, remove_backup_dots, match);<br class="gmail_msg">
+    Compare(one, two, full_match, !remove_backup_dots, !match);<br class="gmail_msg">
+    Compare(one, two, !full_match, remove_backup_dots, match);<br class="gmail_msg">
+//    Compare(one, two, !full_match, !remove_backup_dots, match);<br class="gmail_msg">
+  }<br class="gmail_msg">
+<br class="gmail_msg">
+}<br class="gmail_msg">
+<br class="gmail_msg">
+#if 0<br class="gmail_msg">
+TEST(FileSpecTest, EqualDotsPosixRoot) {<br class="gmail_msg">
+  const bool full_match = true;<br class="gmail_msg">
+  const bool remove_backup_dots = true;<br class="gmail_msg">
+  const bool match = true;<br class="gmail_msg">
+  std::pair<const char *, const char *> tests[] = {<br class="gmail_msg">
+      {R"(/)", R"(/..)"},<br class="gmail_msg">
+      {R"(/)", R"(/foo/..)"},<br class="gmail_msg">
+  };<br class="gmail_msg">
+<br class="gmail_msg">
+  for(const auto &test: tests) {<br class="gmail_msg">
+    FileSpec one(test.first, false, FileSpec::ePathSyntaxPosix);<br class="gmail_msg">
+    FileSpec two(test.second, false, FileSpec::ePathSyntaxPosix);<br class="gmail_msg">
+    EXPECT_NE(one, two);<br class="gmail_msg">
+    Compare(one, two, full_match, remove_backup_dots, match);<br class="gmail_msg">
+    Compare(one, two, !full_match, remove_backup_dots, match);<br class="gmail_msg">
+  }<br class="gmail_msg">
 }<br class="gmail_msg">
+#endif<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
_______________________________________________<br class="gmail_msg">
lldb-commits mailing list<br class="gmail_msg">
<a href="mailto:lldb-commits@lists.llvm.org" class="gmail_msg" target="_blank">lldb-commits@lists.llvm.org</a><br class="gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits</a><br class="gmail_msg">
</blockquote></div>