[Request] [+- ] D11449: tests: make removeemptydirs more portable

marmoute (Pierre-Yves David) phabricator at mercurial-scm.org
Fri Sep 17 14:06:11 UTC 2021


marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  The behavior of pwd change from one system (i.e. default shell/sh) from one
  system to another so we use fuzzy matching for the output we do not care and we
  use narrower command call to highlight what we are trying to test here.

REPOSITORY
  rHG Mercurial

BRANCH
  stable

REVISION DETAIL
  https://phab.mercurial-scm.org/D11449

AFFECTED FILES
  contrib/check-code.py
  tests/test-removeemptydirs.t

CHANGE DETAILS

diff --git a/tests/test-removeemptydirs.t b/tests/test-removeemptydirs.t
--- a/tests/test-removeemptydirs.t
+++ b/tests/test-removeemptydirs.t
@@ -1,5 +1,13 @@
 Tests for experimental.removeemptydirs
 
+  $ cat >> pwd.py << EOF
+  > import os
+  > try:
+  >     print(os.getcwd())
+  > except OSError:
+  >     print("<directory is no longer accessible>")
+  > EOF
+
   $ NO_RM=--config=experimental.removeemptydirs=0
   $ DO_RM=--config=experimental.removeemptydirs=1
   $ isdir() { if [ -d $1 ]; then echo yes; else echo no; fi }
@@ -132,8 +140,15 @@
   r1
   r2
   somedir
-  $ pwd
+#if windows
+  $ "$PYTHON" "$TESTTMP/pwd.py"
   $TESTTMP/hghistedit/somedir
+#else
+  $ echo ${PWD} # no-pwd-check
+  $TESTTMP/hghistedit/somedir
+  $ "$PYTHON" "$TESTTMP/pwd.py"
+  <directory is no longer accessible>
+#endif
   $ ls -1 $TESTTMP/hghistedit/somedir
   foo
   $ ls -1
@@ -142,6 +157,7 @@
 Get out of the doomed directory
 
   $ cd $TESTTMP/hghistedit
+  chdir: error retrieving current directory: getcwd: cannot access parent directories: $ENOENT$ (?)
   $ hg files --rev . | grep somedir/
   somedir/foo
 
diff --git a/contrib/check-code.py b/contrib/check-code.py
--- a/contrib/check-code.py
+++ b/contrib/check-code.py
@@ -195,7 +195,7 @@
     [
         (r'^function', "don't use 'function', use old style"),
         (r'^diff.*-\w*N', "don't use 'diff -N'"),
-        (r'\$PWD|\${PWD}', "don't use $PWD, use `pwd`"),
+        (r'\$PWD|\${PWD}', "don't use $PWD, use `pwd`", "no-pwd-check"),
         (r'^([^"\'\n]|("[^"\n]*")|(\'[^\'\n]*\'))*\^', "^ must be quoted"),
         (r'kill (`|\$\()', "don't use kill, use killdaemons.py"),
     ],



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercurial-scm.org/pipermail/mercurial-patches/attachments/20210917/4ef7b9d5/attachment-0001.html>


More information about the Mercurial-patches mailing list