rhg: add harness tests for rhg files
authorAntoine Cezar <antoine.cezar@octobus.net>
Mon, 03 Aug 2020 11:55:59 +0200
changeset 45437 e339693addc0
parent 45436 1b3197047f5c
child 45438 ed95ccc94333
rhg: add harness tests for rhg files Differential Revision: https://phab.mercurial-scm.org/D8873
tests/test-rhg.t
--- a/tests/test-rhg.t	Thu Jul 30 16:55:44 2020 +0200
+++ b/tests/test-rhg.t	Mon Aug 03 11:55:59 2020 +0200
@@ -1,5 +1,6 @@
 #require rust
 
+Define an rhg function that will only run if rhg exists
   $ rhg() {
   > if [ -f "$RUNTESTDIR/../rust/target/debug/rhg" ]; then
   >   "$RUNTESTDIR/../rust/target/debug/rhg" "$@"
@@ -8,19 +9,56 @@
   >   exit 80
   > fi
   > }
+
+Unimplemented command
   $ rhg unimplemented-command
   [252]
+
+Finding root
   $ rhg root
   abort: no repository found in '$TESTTMP' (.hg not found)!
   [255]
+
   $ hg init repository
   $ cd repository
   $ rhg root
   $TESTTMP/repository
+
+Unwritable file descriptor
   $ rhg root > /dev/full
   abort: No space left on device (os error 28)
   [255]
+
+Deleted repository
   $ rm -rf `pwd`
   $ rhg root
   abort: error getting current working directory: $ENOENT$
   [255]
+
+Listing tracked files
+  $ cd $TESTTMP
+  $ hg init repository
+  $ cd repository
+  $ for i in 1 2 3; do
+  >   echo $i >> file$i
+  >   hg add file$i
+  > done
+  > hg commit -m "commit $i" -q
+
+Listing tracked files from root
+  $ rhg files
+  file1
+  file2
+  file3
+
+Listing tracked files from subdirectory
+  $ mkdir -p path/to/directory
+  $ cd path/to/directory
+  $ rhg files
+  ../../../file1
+  ../../../file2
+  ../../../file3
+
+Listing tracked files through broken pipe
+  $ rhg files | head -n 1
+  ../../../file1