tests/test-transaction-rollback-on-sigpipe.t
changeset 47618 27ff81547d35
parent 47615 a8d1adeeba87
child 47920 9c4204b7f3e4
--- a/tests/test-transaction-rollback-on-sigpipe.t	Mon Jul 12 03:29:21 2021 +0200
+++ b/tests/test-transaction-rollback-on-sigpipe.t	Mon Jul 12 03:30:04 2021 +0200
@@ -26,37 +26,55 @@
   > [hooks]
   > pretxnchangegroup.00-break-things=sh "$RUNTESTDIR/testlib/wait-on-file" 10 "$SYNCFILE2" "$SYNCFILE1"
   > pretxnchangegroup.01-output-things=echo "some remote output to be forward to the closed pipe"
+  > pretxnchangegroup.02-output-things=echo "some more remote output"
   > EOF
 
   $ hg --cwd ./remote tip -T '{node|short}\n'
   000000000000
   $ cd local
   $ echo foo > foo ; hg commit -qAm "commit"
-  $ hg push -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --remotecmd "$remotecmd"
-  pushing to ssh://user@dummy/$TESTTMP/remote
-  searching for changes
-  remote: adding changesets (py3 !)
-  remote: adding manifests (py3 !)
-  remote: adding file changes (py3 !)
-  remote: adding changesets (no-py3 no-chg !)
-  remote: adding manifests (no-py3 no-chg !)
-  remote: adding file changes (no-py3 no-chg !)
+
+(use quiet to avoid flacky output from the server)
+
+  $ hg push --quiet -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --remotecmd "$remotecmd"
   abort: stream ended unexpectedly (got 0 bytes, expected 4)
   [255]
   $ cat $SIGPIPE_REMOTE_DEBUG_FILE
   SIGPIPE-HELPER: Starting
-  SIGPIPE-HELPER: Mercurial started
   SIGPIPE-HELPER: Redirection in place
+  SIGPIPE-HELPER: pipes closed in main
   SIGPIPE-HELPER: SYNCFILE1 detected
-  SIGPIPE-HELPER: pipes closed
+  SIGPIPE-HELPER: worker killed
   SIGPIPE-HELPER: creating SYNCFILE2
   SIGPIPE-HELPER: Shutting down
-  SIGPIPE-HELPER: Server process terminated
+  SIGPIPE-HELPER: Server process terminated with status 255 (no-windows !)
+  SIGPIPE-HELPER: Server process terminated with status 1 (windows !)
   SIGPIPE-HELPER: Shut down
 
 The remote should be left in a good state
   $ hg --cwd ../remote tip -T '{node|short}\n'
   000000000000
+
+#if windows
+
+XXX-Windows Broken behavior to be fixed
+
+Behavior on Windows is broken and should be fixed. However this is a fairly
+corner case situation and no data are being corrupted. This would affect
+central repository being hosted on a Windows machine and accessed using ssh.
+
+This was catch as we setup new CI for Windows. Making the test pass on Windows
+was enough of a pain that fixing the behavior set aside for now. Dear and
+honorable reader, feel free to fix it.
+
+  $ hg --cwd ../remote recover
+  rolling back interrupted transaction
+  (verify step skipped, run `hg verify` to check your repository content)
+
+#else
+
   $ hg --cwd ../remote recover
   no interrupted transaction available
   [1]
+
+#endif