view tests/test-ssh-batch.t @ 51274:bec6e9c108fd

matchers: use correct method for finding index in vector The path matcher has an optimization for when all paths are `rootfilesin:`. This optimization exists in both Python and Rust. However, the Rust implementation currently has a bug that makes it fail in most cases. The bug is that it `rfind()` where it was clearly intended to use `rposition()`. This patch fixes that and adds a test.
author Martin von Zweigbergk <martinvonz@google.com>
date Mon, 18 Dec 2023 14:51:20 -0800
parents 9c4204b7f3e4
children
line wrap: on
line source

  $ hg init a
  $ cd a
  $ touch a; hg commit -qAm_
  $ hg bookmark $(for i in $($TESTDIR/seq.py 0 20); do echo b$i; done)
  $ hg clone . ../b -q
  $ cd ../b

Checking that when lookup multiple bookmarks in one go, if one of them
fails (thus causing the sshpeer to be stopped), the errors from the
further lookups don't result in tracebacks.

  $ hg pull -r b0 -r nosuchbookmark $(for i in $($TESTDIR/seq.py 1 20); do echo -r b$i; done) ssh://user@dummy/$(pwd)/../a
  pulling from ssh://user@dummy/$TESTTMP/b/../a
  abort: unknown revision 'nosuchbookmark'
  [255]