Mercurial > hg
annotate tests/test-empty.t @ 35930:83d67257ba90
tests: add low-level SSH protocol tests
We don't really have good low-level tests for the behavior of the SSH
wire protocol. This commit attempts to establish some.
The added tests consist of a mixture of starting a server
with `hg serve --stdio` and sending bytes to it and using
`hg debugpeer` to go through the official client code. Having
insight into what raw bytes are exchanged as well as what the peer
does is useful.
We also introduce a test extension for modifying the behavior of
the SSH server and peer. For example, we change the server to
not recognize the "hello" command, simulating behavior of <0.9.1
servers.
These tests are generally useful to have. But the impetus for creating
them now is they will be needed for verifying behavior of old clients
and servers when a new SSH protocol is introduced.
Differential Revision: https://phab.mercurial-scm.org/D2026
# no-check-commit because of serve_forever()
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sun, 04 Feb 2018 14:02:41 -0800 |
parents | ab2362e1672e |
children | f1186c292d03 |
rev | line source |
---|---|
11743 | 1 Create an empty repo: |
2 | |
3 $ hg init a | |
4 $ cd a | |
5 | |
6 Try some commands: | |
7 | |
8 $ hg log | |
9 $ hg grep wah | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11743
diff
changeset
|
10 [1] |
11743 | 11 $ hg manifest |
12 $ hg verify | |
13 checking changesets | |
14 checking manifests | |
15 crosschecking files in changesets and manifests | |
16 checking files | |
17 0 files, 0 changesets, 0 total revisions | |
18 | |
19 Check the basic files created: | |
20 | |
21 $ ls .hg | |
22 00changelog.i | |
23 requires | |
24 store | |
25 | |
26 Should be empty: | |
1338 | 27 |
11743 | 28 $ ls .hg/store |
29 | |
30 Poke at a clone: | |
6944
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
31 |
11743 | 32 $ cd .. |
33 $ hg clone a b | |
34 updating to branch default | |
35 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
36 $ cd b | |
37 $ hg verify | |
38 checking changesets | |
39 checking manifests | |
40 crosschecking files in changesets and manifests | |
41 checking files | |
42 0 files, 0 changesets, 0 total revisions | |
43 $ ls .hg | |
44 00changelog.i | |
45 hgrc | |
46 requires | |
47 store | |
48 | |
49 Should be empty: | |
50 | |
51 $ ls .hg/store | |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
12316
diff
changeset
|
52 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
12316
diff
changeset
|
53 $ cd .. |