# HG changeset patch # User Matt Harbison # Date 1508469408 14400 # Node ID 9645c2a2bc2acceb2e61bc15103ecd686ee09963 # Parent ffeea2406276980990b897473ce85de531c2d614 test-arbitraryfilectx: stabilize for Windows Previously, the second last test (context.arbitraryfilectx(..)) returned True on Windows. I changed the repo setup sequence to import a patch, so that way the repo would have a proper symlink. That made the last test fail, since it is comparing files in wdir(), one of which is not the expected symlink. Apparently the (feature !) line matching doesn't work well with (no-eol), so I had to conditionalize the test instead of the output. diff -r ffeea2406276 -r 9645c2a2bc2a tests/test-arbitraryfilectx.t --- a/tests/test-arbitraryfilectx.t Sat Oct 28 12:35:54 2017 -0700 +++ b/tests/test-arbitraryfilectx.t Thu Oct 19 23:16:48 2017 -0400 @@ -19,6 +19,7 @@ $ mkdir case1 $ cd case1 $ hg init +#if symlink $ printf "A" > real_A $ printf "foo" > A $ printf "foo" > B @@ -29,6 +30,44 @@ adding real_A adding sym_A $ hg commit -m "base" +#else + $ hg import -q --bypass - < # HG changeset patch + > # User test + > # Date 0 0 + > base + > + > diff --git a/A b/A + > new file mode 100644 + > --- /dev/null + > +++ b/A + > @@ -0,0 +1,1 @@ + > +foo + > \ No newline at end of file + > diff --git a/B b/B + > new file mode 100644 + > --- /dev/null + > +++ b/B + > @@ -0,0 +1,1 @@ + > +foo + > \ No newline at end of file + > diff --git a/real_A b/real_A + > new file mode 100644 + > --- /dev/null + > +++ b/real_A + > @@ -0,0 +1,1 @@ + > +A + > \ No newline at end of file + > diff --git a/sym_A b/sym_A + > new file mode 120000 + > --- /dev/null + > +++ b/sym_A + > @@ -0,0 +1,1 @@ + > +A + > \ No newline at end of file + > EOF + $ hg up -q +#endif These files are different and should return True (different): (Note that filecmp.cmp's return semantics are inverted from ours, so we invert @@ -53,5 +92,10 @@ A naive use of filecmp on those two would wrongly return True, since it follows the symlink to "A", which has different contents. +#if symlink $ hg eval "not filecmp.cmp('real_A', 'sym_A')" True (no-eol) +#else + $ hg eval "not filecmp.cmp('real_A', 'sym_A')" + False (no-eol) +#endif