tests/test-py3-commands.t
author Augie Fackler <augie@google.com>
Mon, 30 Apr 2018 22:24:58 -0400
branchstable
changeset 38195 9c5ced5276d6
parent 33093 7fed389f9a9f
child 38027 1b8238f67bf2
permissions -rw-r--r--
mpatch: avoid integer overflow in combine() (SEC) All the callers of this function can handle a NULL return, so that appears to be the "safe" way to report an error.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
30129
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     1
#require py3exe
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     2
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     3
This test helps in keeping a track on which commands we can run on
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     4
Python 3 and see what kind of errors are coming up.
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     5
The full traceback is hidden to have a stable output.
31376
3690c75f4d1e tests: make a variable for hg binary location in test-check-py3-commands
Augie Fackler <augie@google.com>
parents: 31361
diff changeset
     6
  $ HGBIN=`which hg`
30129
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     7
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     8
  $ for cmd in version debuginstall ; do
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     9
  >   echo $cmd
31376
3690c75f4d1e tests: make a variable for hg binary location in test-check-py3-commands
Augie Fackler <augie@google.com>
parents: 31361
diff changeset
    10
  >   $PYTHON3 $HGBIN $cmd 2>&1 2>&1 | tail -1
30129
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    11
  > done
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    12
  version
30586
2d555d753f0e py3: make keys of keyword arguments strings
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30569
diff changeset
    13
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
30129
d69d86e7d6c8 py3: test to check which commands run
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    14
  debuginstall
31308
62939e0148f1 policy: try and always have a bytes for module policy
Augie Fackler <raf@durin42.com>
parents: 31304
diff changeset
    15
  no problems detected
31304
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    16
31377
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    17
#if test-repo
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    18
Make a clone so that any features in the developer's .hg/hgrc that
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    19
might confuse Python 3 don't break this test. When we can do commit in
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    20
Python 3, we'll stop doing this. We use e76ed1e480ef for the clone
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    21
because it has different files than 273ce12ad8f1, so we can test both
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    22
`files` from dirstate and `files` loaded from a specific revision.
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    23
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    24
  $ hg clone -r e76ed1e480ef "`dirname "$TESTDIR"`" testrepo 2>&1 | tail -1
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    25
  15 files updated, 0 files merged, 0 files removed, 0 files unresolved
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    26
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    27
Test using -R, which exercises some URL code:
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    28
  $ $PYTHON3 $HGBIN -R testrepo files -r 273ce12ad8f1 | tail -1
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    29
  testrepo/tkmerge
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    30
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    31
Now prove `hg files` is reading the whole manifest. We have to grep
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    32
out some potential warnings that come from hgrc as yet.
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    33
  $ cd testrepo
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    34
  $ $PYTHON3 $HGBIN files -r 273ce12ad8f1
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    35
  .hgignore
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    36
  PKG-INFO
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    37
  README
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    38
  hg
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    39
  mercurial/__init__.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    40
  mercurial/byterange.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    41
  mercurial/fancyopts.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    42
  mercurial/hg.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    43
  mercurial/mdiff.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    44
  mercurial/revlog.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    45
  mercurial/transaction.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    46
  notes.txt
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    47
  setup.py
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    48
  tkmerge
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    49
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    50
  $ $PYTHON3 $HGBIN files -r 273ce12ad8f1 | wc -l
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    51
  \s*14 (re)
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    52
  $ $PYTHON3 $HGBIN files | wc -l
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    53
  \s*15 (re)
31450
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    54
31487
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    55
Test if log-like commands work:
31450
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    56
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    57
  $ $PYTHON3 $HGBIN tip
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    58
  changeset:   10:e76ed1e480ef
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    59
  tag:         tip
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    60
  user:        oxymoron@cinder.waste.org
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    61
  date:        Tue May 03 23:37:43 2005 -0800
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    62
  summary:     Fix linking of changeset revs when merging
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    63
  
b3b4c487707c py3: prove hg tip works
Yuya Nishihara <yuya@tcha.org>
parents: 31401
diff changeset
    64
31487
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    65
  $ $PYTHON3 $HGBIN log -r0
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    66
  changeset:   0:9117c6561b0b
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    67
  user:        mpm@selenic.com
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    68
  date:        Tue May 03 13:16:10 2005 -0800
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    69
  summary:     Add back links from file revisions to changeset revisions
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    70
  
a992caaf0e22 py3: convert log opts to bytes-key dict
Yuya Nishihara <yuya@tcha.org>
parents: 31450
diff changeset
    71
31377
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    72
  $ cd ..
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    73
#endif
52ee1b5ac277 py3: prove `hg files --rev` works
Augie Fackler <augie@google.com>
parents: 31376
diff changeset
    74
31522
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    75
Test if `hg config` works:
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    76
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    77
  $ $PYTHON3 $HGBIN config
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    78
  devel.all-warnings=true
32520
dc0da9829c29 py3: update test expectations for py3-commands test
Augie Fackler <raf@durin42.com>
parents: 32163
diff changeset
    79
  devel.default-date=0 0
31522
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    80
  largefiles.usercache=$TESTTMP/.cache/largefiles
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    81
  ui.slash=True
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    82
  ui.interactive=False
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    83
  ui.mergemarkers=detailed
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    84
  ui.promptecho=True
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    85
  web.address=localhost
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    86
  web.ipv6=False
23fc9b98445f py3: prove hg config works
Rishabh Madan <rishabhmadan96@gmail.com>
parents: 31487
diff changeset
    87
31304
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    88
  $ cat > included-hgrc <<EOF
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    89
  > [extensions]
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    90
  > babar = imaginary_elephant
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    91
  > EOF
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    92
  $ cat >> $HGRCPATH <<EOF
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    93
  > %include $TESTTMP/included-hgrc
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    94
  > EOF
31376
3690c75f4d1e tests: make a variable for hg binary location in test-check-py3-commands
Augie Fackler <augie@google.com>
parents: 31361
diff changeset
    95
  $ $PYTHON3 $HGBIN version | tail -1
31304
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    96
  *** failed to import extension babar from imaginary_elephant: *: 'imaginary_elephant' (glob)
dab92f3dbd98 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com>
parents: 30586
diff changeset
    97
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
31361
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
    98
31398
d785fed7c115 tests: clean up bad extension
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31377
diff changeset
    99
  $ rm included-hgrc
d785fed7c115 tests: clean up bad extension
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31377
diff changeset
   100
  $ touch included-hgrc
d785fed7c115 tests: clean up bad extension
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31377
diff changeset
   101
31361
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   102
Test bytes-ness of policy.policy with HGMODULEPOLICY
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   103
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   104
  $ HGMODULEPOLICY=py
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   105
  $ export HGMODULEPOLICY
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   106
  $ $PYTHON3 `which hg` debuginstall 2>&1 2>&1 | tail -1
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31308
diff changeset
   107
  no problems detected
31401
ed23f929af38 tests: prove that `hg init` works with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31398
diff changeset
   108
ed23f929af38 tests: prove that `hg init` works with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31398
diff changeset
   109
`hg init` can create empty repos
31632
d059821fc89f test-check-py3-commands: cleanup tests related to `hg status`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31607
diff changeset
   110
`hg status works fine`
31717
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   111
`hg summary` also works!
31401
ed23f929af38 tests: prove that `hg init` works with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31398
diff changeset
   112
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   113
  $ $PYTHON3 `which hg` init py3repo
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   114
  $ cd py3repo
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   115
  $ echo "This is the file 'iota'." > iota
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   116
  $ $PYTHON3 $HGBIN status
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   117
  ? iota
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   118
  $ $PYTHON3 $HGBIN add iota
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   119
  $ $PYTHON3 $HGBIN status
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   120
  A iota
32644
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   121
  $ hg diff --nodates --git
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   122
  diff --git a/iota b/iota
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   123
  new file mode 100644
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   124
  --- /dev/null
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   125
  +++ b/iota
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   126
  @@ -0,0 +1,1 @@
01a95cbbff56 py3: add a test to show `hg diff` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32616
diff changeset
   127
  +This is the file 'iota'.
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   128
  $ $PYTHON3 $HGBIN commit --message 'commit performed in Python 3'
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   129
  $ $PYTHON3 $HGBIN status
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   130
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   131
  $ mkdir A
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   132
  $ echo "This is the file 'mu'." > A/mu
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   133
  $ $PYTHON3 $HGBIN addremove
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   134
  adding A/mu
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   135
  $ $PYTHON3 $HGBIN status
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   136
  A A/mu
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   137
  $ HGEDITOR='echo message > ' $PYTHON3 $HGBIN commit
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   138
  $ $PYTHON3 $HGBIN status
31717
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   139
  $ $PYHON3 $HGBIN summary
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   140
  parent: 1:e1e9167203d4 tip
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   141
   message
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   142
  branch: default
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   143
  commit: (clean)
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   144
  update: (current)
62676bb8d534 tests: add check to make sure summary works on Python 2
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31651
diff changeset
   145
  phases: 2 draft
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   146
32615
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   147
Test weird unicode-vs-bytes stuff
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   148
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   149
  $ $PYTHON3 $HGBIN help | egrep -v '^ |^$'
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   150
  Mercurial Distributed SCM
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   151
  list of commands:
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   152
  additional help topics:
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   153
  (use 'hg help -v' to show built-in aliases and global options)
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   154
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   155
  $ $PYTHON3 $HGBIN help help | egrep -v '^ |^$'
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   156
  hg help [-ecks] [TOPIC]
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   157
  show help for a given topic or a help overview
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   158
  options ([+] can be repeated):
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   159
  (some details hidden, use --verbose to show complete help)
c9318beb7c1a py3: convert __doc__ back to bytes in help.py
Yuya Nishihara <yuya@tcha.org>
parents: 32520
diff changeset
   160
32616
6df193b5c437 py3: implement __bytes__() on most of our exception classes
Yuya Nishihara <yuya@tcha.org>
parents: 32615
diff changeset
   161
  $ $PYTHON3 $HGBIN help -k notopic
6df193b5c437 py3: implement __bytes__() on most of our exception classes
Yuya Nishihara <yuya@tcha.org>
parents: 32615
diff changeset
   162
  abort: no matches
6df193b5c437 py3: implement __bytes__() on most of our exception classes
Yuya Nishihara <yuya@tcha.org>
parents: 32615
diff changeset
   163
  (try 'hg help' for a list of topics)
6df193b5c437 py3: implement __bytes__() on most of our exception classes
Yuya Nishihara <yuya@tcha.org>
parents: 32615
diff changeset
   164
  [255]
6df193b5c437 py3: implement __bytes__() on most of our exception classes
Yuya Nishihara <yuya@tcha.org>
parents: 32615
diff changeset
   165
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   166
Prove the repo is valid using the Python 2 `hg`:
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   167
  $ hg verify
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   168
  checking changesets
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   169
  checking manifests
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   170
  crosschecking files in changesets and manifests
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   171
  checking files
31651
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   172
  2 files, 2 changesets, 2 total revisions
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   173
  $ hg log
31651
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   174
  changeset:   1:e1e9167203d4
31607
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   175
  tag:         tip
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   176
  user:        test
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   177
  date:        Thu Jan 01 00:00:00 1970 +0000
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   178
  summary:     message
aea8ec3f7dd1 py3: prove `hg {add,addremove,commit} all work
Augie Fackler <augie@google.com>
parents: 31524
diff changeset
   179
  
31651
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   180
  changeset:   0:71c96e924262
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   181
  user:        test
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   182
  date:        Thu Jan 01 00:00:00 1970 +0000
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   183
  summary:     commit performed in Python 3
d3140fd322bf py3: prove second commit works
Yuya Nishihara <yuya@tcha.org>
parents: 31632
diff changeset
   184
  
32162
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   185
32803
90ce5f0366ba py3: use python3 hg in test-py3-commands.t at places where py2 hg was used
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32645
diff changeset
   186
  $ $PYTHON3 $HGBIN log -G
32162
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   187
  @  changeset:   1:e1e9167203d4
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   188
  |  tag:         tip
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   189
  |  user:        test
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   190
  |  date:        Thu Jan 01 00:00:00 1970 +0000
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   191
  |  summary:     message
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   192
  |
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   193
  o  changeset:   0:71c96e924262
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   194
     user:        test
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   195
     date:        Thu Jan 01 00:00:00 1970 +0000
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   196
     summary:     commit performed in Python 3
4c49c8601093 py3: add test to show 'hg log -G' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32161
diff changeset
   197
  
32803
90ce5f0366ba py3: use python3 hg in test-py3-commands.t at places where py2 hg was used
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32645
diff changeset
   198
  $ $PYTHON3 $HGBIN log -Tjson
32163
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   199
  [
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   200
   {
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   201
    "rev": 1,
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   202
    "node": "e1e9167203d450ca2f558af628955b5f5afd4489",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   203
    "branch": "default",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   204
    "phase": "draft",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   205
    "user": "test",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   206
    "date": [0, 0],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   207
    "desc": "message",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   208
    "bookmarks": [],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   209
    "tags": ["tip"],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   210
    "parents": ["71c96e924262969ff0d8d3d695b0f75412ccc3d8"]
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   211
   },
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   212
   {
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   213
    "rev": 0,
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   214
    "node": "71c96e924262969ff0d8d3d695b0f75412ccc3d8",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   215
    "branch": "default",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   216
    "phase": "draft",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   217
    "user": "test",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   218
    "date": [0, 0],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   219
    "desc": "commit performed in Python 3",
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   220
    "bookmarks": [],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   221
    "tags": [],
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   222
    "parents": ["0000000000000000000000000000000000000000"]
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   223
   }
e1d1f1bc4a95 py3: add test to show 'hg log -Tjson' works
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32162
diff changeset
   224
  ]
32645
74e9496e4986 py3: add test to show `hg update` and `hg identify` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32644
diff changeset
   225
74e9496e4986 py3: add test to show `hg update` and `hg identify` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32644
diff changeset
   226
Show that update works now!
74e9496e4986 py3: add test to show `hg update` and `hg identify` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32644
diff changeset
   227
32803
90ce5f0366ba py3: use python3 hg in test-py3-commands.t at places where py2 hg was used
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32645
diff changeset
   228
  $ $PYTHON3 $HGBIN up 0
32645
74e9496e4986 py3: add test to show `hg update` and `hg identify` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32644
diff changeset
   229
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
32803
90ce5f0366ba py3: use python3 hg in test-py3-commands.t at places where py2 hg was used
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32645
diff changeset
   230
  $ $PYTHON3 $HGBIN identify
32645
74e9496e4986 py3: add test to show `hg update` and `hg identify` works on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32644
diff changeset
   231
  71c96e924262
33093
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   232
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   233
branches and bookmarks also works!
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   234
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   235
  $ $PYTHON3 $HGBIN branches
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   236
  default                        1:e1e9167203d4
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   237
  $ $PYTHON3 $HGBIN bookmark book
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   238
  $ $PYTHON3 $HGBIN bookmarks
7fed389f9a9f py3: add tests to show `hg bookmarks` and `hg branches` work on Python 3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32803
diff changeset
   239
   * book                      0:71c96e924262