Mercurial > hg
annotate tests/test-phabricator.t @ 40894:57e4150fb15b
test: enable sparse-revlog for test-init.t
We are about to enable sparse-revlog globally. To help with reviewing the
tests change, we isolate them in individual changesets.
Differential Revision: https://phab.mercurial-scm.org/D5321
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Mon, 12 Nov 2018 01:06:10 +0100 |
parents | 4057e38bba76 |
children | d7d3164e6a31 |
rev | line source |
---|---|
39651
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
1 #require vcr |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
2 $ cat >> $HGRCPATH <<EOF |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
3 > [extensions] |
39652
d2c81e83de2a
phabricator: move extension from contrib to hgext
Augie Fackler <raf@durin42.com>
parents:
39651
diff
changeset
|
4 > phabricator = |
39651
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
5 > EOF |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
6 $ hg init repo |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
7 $ cd repo |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
8 $ cat >> .hg/hgrc <<EOF |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
9 > [phabricator] |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
10 > url = https://phab.mercurial-scm.org/ |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
11 > callsign = HG |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
12 > |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
13 > [auth] |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
14 > hgphab.schemes = https |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
15 > hgphab.prefix = phab.mercurial-scm.org |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
16 > # When working on the extension and making phabricator interaction |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
17 > # changes, edit this to be a real phabricator token. When done, edit |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
18 > # it back, and make sure to also edit your VCR transcripts to match |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
19 > # whatever value you put here. |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
20 > hgphab.phabtoken = cli-hahayouwish |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
21 > EOF |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
22 $ VCR="$TESTDIR/phabricator" |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
23 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
24 Error is handled reasonably. We override the phabtoken here so that |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
25 when you're developing changes to phabricator.py you can edit the |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
26 above config and have a real token in the test but not have to edit |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
27 this test. |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
28 $ hg phabread --config auth.hgphab.phabtoken=cli-notavalidtoken \ |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
29 > --test-vcr "$VCR/phabread-conduit-error.json" D4480 | head |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
30 abort: Conduit Error (ERR-INVALID-AUTH): API token "cli-notavalidtoken" has the wrong length. API tokens should be 32 characters long. |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
31 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
32 Basic phabread: |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
33 $ hg phabread --test-vcr "$VCR/phabread-4480.json" D4480 | head |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
34 # HG changeset patch |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
35 exchangev2: start to implement pull with wire protocol v2 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
36 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
37 Wire protocol version 2 will take a substantially different |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
38 approach to exchange than version 1 (at least as far as pulling |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
39 is concerned). |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
40 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
41 This commit establishes a new exchangev2 module for holding |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
42 code related to exchange using wire protocol v2. I could have |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
43 added things to the existing exchange module. But it is already |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
44 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
45 phabupdate with an accept: |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
46 $ hg phabupdate --accept D4564 \ |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
47 > -m 'I think I like where this is headed. Will read rest of series later.'\ |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
48 > --test-vcr "$VCR/accept-4564.json" |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
49 |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
50 Create a differential diff: |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
51 $ echo alpha > alpha |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
52 $ hg ci --addremove -m 'create alpha for phabricator test' |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
53 adding alpha |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
54 $ hg phabsend -r . --test-vcr "$VCR/phabsend-create-alpha.json" |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
55 D4596 - created - 5206a4fa1e6c: create alpha for phabricator test |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
56 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/5206a4fa1e6c-dec9e777-phabsend.hg |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
57 $ echo more >> alpha |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
58 $ HGEDITOR=true hg ci --amend |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
59 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/d8f232f7d799-c573510a-amend.hg |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
60 $ echo beta > beta |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
61 $ hg ci --addremove -m 'create beta for phabricator test' |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
62 adding beta |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
63 $ hg phabsend -r ".^::" --test-vcr "$VCR/phabsend-update-alpha-create-beta.json" |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
64 D4596 - updated - f70265671c65: create alpha for phabricator test |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
65 D4597 - created - 1a5640df7bbf: create beta for phabricator test |
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
66 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/1a5640df7bbf-6daf3e6e-phabsend.hg |
39653
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
67 |
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
68 Template keywords |
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
69 $ hg log -T'{rev} {phabreview|json}\n' |
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
70 1 {"id": "D4597", "url": "https://phab.mercurial-scm.org/D4597"} |
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
71 0 {"id": "D4596", "url": "https://phab.mercurial-scm.org/D4596"} |
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
72 |
39654
4057e38bba76
phabricator: fix templating bug by using hybriddict
Augie Fackler <raf@durin42.com>
parents:
39653
diff
changeset
|
73 $ hg log -T'{rev} {phabreview.url} {phabreview.id}\n' |
4057e38bba76
phabricator: fix templating bug by using hybriddict
Augie Fackler <raf@durin42.com>
parents:
39653
diff
changeset
|
74 1 https://phab.mercurial-scm.org/D4597 D4597 |
4057e38bba76
phabricator: fix templating bug by using hybriddict
Augie Fackler <raf@durin42.com>
parents:
39653
diff
changeset
|
75 0 https://phab.mercurial-scm.org/D4596 D4596 |
39653
10c53b2e9d52
phabricator: add tests of templatekeyword
Augie Fackler <raf@durin42.com>
parents:
39652
diff
changeset
|
76 |
39651
a641fd1a1196
tests: add some basic tests of phabricator interactions
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
77 $ cd .. |