tests/test-ssh-batch.t
author Arseniy Alekseyev <aalekseyev@janestreet.com>
Mon, 15 Apr 2024 16:33:37 +0100
branchstable
changeset 51571 74230abb2504
parent 47920 9c4204b7f3e4
permissions -rw-r--r--
match: strengthen visit_children_set invariant, Recursive means "all files" My previous interpretation of "Recursive" was too relaxed: I thought it instructed the caller to do something like this: > you can stop calling `visit_children_set` because you'll need to descend into > every directory recursively, but you should still check every file if it > matches or not Whereas the real instruction seems to be: > I guarantee that everything in this subtree matches, you can stop > querying the matcher for all files and dirs altogether. The evidence to support this: - the test actually passes with the stronger invariant, revealing no exceptions from this rule - the implementation of `visit_children_set` for `DifferenceMatcher` clearly relies on this requirement, so it must hold for that not to lead to bugs.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
46670
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     1
  $ hg init a
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     2
  $ cd a
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     3
  $ touch a; hg commit -qAm_
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     4
  $ hg bookmark $(for i in $($TESTDIR/seq.py 0 20); do echo b$i; done)
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     5
  $ hg clone . ../b -q
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     6
  $ cd ../b
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     7
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     8
Checking that when lookup multiple bookmarks in one go, if one of them
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
     9
fails (thus causing the sshpeer to be stopped), the errors from the
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
    10
further lookups don't result in tracebacks.
fe36ce0fbcdd test: show internal exception with batchable rpcs over ssh
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
diff changeset
    11
47920
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46672
diff changeset
    12
  $ 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
46672
aa2e38147e8b wireprotov1peer: don't raise internal errors in some cases
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 46671
diff changeset
    13
  pulling from ssh://user@dummy/$TESTTMP/b/../a
aa2e38147e8b wireprotov1peer: don't raise internal errors in some cases
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 46671
diff changeset
    14
  abort: unknown revision 'nosuchbookmark'
aa2e38147e8b wireprotov1peer: don't raise internal errors in some cases
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 46671
diff changeset
    15
  [255]