tests/test-show-work.t
author Manuel Jacob <me@manueljacob.de>
Tue, 07 Jul 2020 11:06:37 +0200
changeset 45068 8cd18aba5e6c
parent 42893 34a46d48d24e
permissions -rw-r--r--
tests: proof test-stdio.py against buffer fill-up With the previous code, it could in theory happen that the pipe / PTY buffer of the child stdout / stderr fills up and the process never finishes. To prevent that, we read all of the stream before waiting for the end of the process. To ensure that the stream reaches EOF when the child finishes, we must close the parent "copy" of the child stdout / stderr.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH << EOF
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     2
  > [extensions]
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     3
  > show =
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     4
  > EOF
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     5
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     6
  $ hg init repo0
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     7
  $ cd repo0
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     8
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     9
Command works on an empty repo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    10
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    11
  $ hg show work
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    12
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    13
Single draft changeset shown
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    14
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    15
  $ echo 0 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    16
  $ hg -q commit -A -m 'commit 0'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    17
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    18
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    19
  @  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    20
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    21
Even when it isn't the wdir
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    22
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    23
  $ hg -q up null
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    24
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    25
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    26
  o  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    27
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    28
Single changeset is still there when public because it is a head
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    29
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    30
  $ hg phase --public -r 0
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    31
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    32
  o  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    33
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    34
A draft child will show both it and public parent
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    35
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    36
  $ hg -q up 0
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    37
  $ echo 1 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    38
  $ hg commit -m 'commit 1'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    39
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    40
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    41
  @  181c commit 1
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    42
  o  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    43
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    44
Multiple draft children will be shown
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    45
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    46
  $ echo 2 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    47
  $ hg commit -m 'commit 2'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    48
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    49
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    50
  @  128c commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    51
  o  181c commit 1
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    52
  o  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    53
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    54
Bumping first draft changeset to public will hide its parent
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    55
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    56
  $ hg phase --public -r 1
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    57
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    58
  @  128c commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    59
  o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    60
  ~
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    61
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    62
Multiple DAG heads will be shown
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    63
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    64
  $ hg -q up -r 1
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    65
  $ echo 3 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    66
  $ hg commit -m 'commit 3'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    67
  created new head
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    68
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    69
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    70
  @  f0ab commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    71
  | o  128c commit 2
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    72
  |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    73
  o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    74
  ~
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    75
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    76
Even when wdir is something else
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    77
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    78
  $ hg -q up null
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    79
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    80
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    81
  o  f0ab commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    82
  | o  128c commit 2
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    83
  |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    84
  o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    85
  ~
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    86
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    87
Draft child shows public head (multiple heads)
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    88
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    89
  $ hg -q up 0
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    90
  $ echo 4 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    91
  $ hg commit -m 'commit 4'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    92
  created new head
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    93
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
    94
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    95
  @  668c commit 4
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    96
  | o  f0ab commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    97
  | | o  128c commit 2
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    98
  | |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
    99
  | o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   100
  |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   101
  o  9f17 commit 0
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   102
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   103
  $ cd ..
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   104
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   105
Branch name appears in output
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   106
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   107
  $ hg init branches
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   108
  $ cd branches
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   109
  $ echo 0 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   110
  $ hg -q commit -A -m 'commit 0'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   111
  $ echo 1 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   112
  $ hg commit -m 'commit 1'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   113
  $ echo 2 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   114
  $ hg commit -m 'commit 2'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   115
  $ hg phase --public -r .
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   116
  $ hg -q up -r 1
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   117
  $ hg branch mybranch
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   118
  marked working directory as branch mybranch
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   119
  (branches are permanent and global, did you want a bookmark?)
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   120
  $ echo 3 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   121
  $ hg commit -m 'commit 3'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   122
  $ echo 4 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   123
  $ hg commit -m 'commit 4'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   124
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
   125
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   126
  @  f8dd (mybranch) commit 4
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   127
  o  90cf (mybranch) commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   128
  | o  128c commit 2
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   129
  |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   130
  o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   131
  ~
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   132
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   133
  $ cd ..
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   134
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   135
Bookmark name appears in output
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   136
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   137
  $ hg init bookmarks
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   138
  $ cd bookmarks
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   139
  $ echo 0 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   140
  $ hg -q commit -A -m 'commit 0'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   141
  $ echo 1 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   142
  $ hg commit -m 'commit 1'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   143
  $ echo 2 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   144
  $ hg commit -m 'commit 2'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   145
  $ hg phase --public -r .
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   146
  $ hg bookmark @
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   147
  $ hg -q up -r 1
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   148
  $ echo 3 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   149
  $ hg commit -m 'commit 3'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   150
  created new head
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   151
  $ echo 4 > foo
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   152
  $ hg commit -m 'commit 4'
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   153
  $ hg bookmark mybook
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   154
32058
0bb157bebb43 show: rename "underway" to "work"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31944
diff changeset
   155
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   156
  @  cac8 (mybook) commit 4
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   157
  o  f0ab commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   158
  | o  128c (@) commit 2
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   159
  |/
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   160
  o  181c commit 1
31944
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   161
  ~
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   162
99bc93147d87 show: implement underway view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   163
  $ cd ..
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   164
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   165
Tags are rendered
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   166
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   167
  $ hg init tags
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   168
  $ cd tags
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   169
  $ echo 0 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   170
  $ hg -q commit -A -m 'commit 1'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   171
  $ echo 1 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   172
  $ hg commit -m 'commit 2'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   173
  $ hg tag 0.1
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   174
  $ hg phase --public -r .
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   175
  $ echo 2 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   176
  $ hg commit -m 'commit 3'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   177
  $ hg tag 0.2
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   178
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   179
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   180
  @  3758 Added tag 0.2 for changeset 6379c25b76f1
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   181
  o  6379 (0.2) commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   182
  o  a2ad Added tag 0.1 for changeset 6a75536ea0b1
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   183
  ~
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   184
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   185
  $ cd ..
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   186
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   187
Multiple names on same changeset render properly
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   188
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   189
  $ hg init multiplenames
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   190
  $ cd multiplenames
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   191
  $ echo 0 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   192
  $ hg -q commit -A -m 'commit 1'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   193
  $ hg phase --public -r .
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   194
  $ hg branch mybranch
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   195
  marked working directory as branch mybranch
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   196
  (branches are permanent and global, did you want a bookmark?)
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   197
  $ hg bookmark mybook
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   198
  $ echo 1 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   199
  $ hg commit -m 'commit 2'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   200
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   201
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   202
  @  3483 (mybook) (mybranch) commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   203
  o  97fc commit 1
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   204
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   205
Multiple bookmarks on same changeset render properly
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   206
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   207
  $ hg book mybook2
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   208
  $ hg show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   209
  @  3483 (mybook mybook2) (mybranch) commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   210
  o  97fc commit 1
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   211
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   212
  $ cd ..
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   213
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   214
Extra namespaces are rendered
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   215
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   216
  $ hg init extranamespaces
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   217
  $ cd extranamespaces
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   218
  $ echo 0 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   219
  $ hg -q commit -A -m 'commit 1'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   220
  $ hg phase --public -r .
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   221
  $ echo 1 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   222
  $ hg commit -m 'commit 2'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   223
  $ echo 2 > foo
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   224
  $ hg commit -m 'commit 3'
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   225
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   226
  $ hg --config extensions.revnames=$TESTDIR/revnamesext.py show work
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   227
  @  32f3 (r2) commit 3
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   228
  o  6a75 (r1) commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   229
  o  97fc (r0) commit 1
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   230
34877
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   231
Obsolescence information appears in labels.
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   232
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   233
  $ cat >> .hg/hgrc << EOF
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   234
  > [experimental]
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   235
  > evolution=createmarkers
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   236
  > EOF
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   237
  $ hg debugobsolete `hg log -r 'desc("commit 2")' -T "{node}"`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39286
diff changeset
   238
  1 new obsolescence markers
34877
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   239
  obsoleted 1 changesets
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 34877
diff changeset
   240
  1 new orphan changesets
34877
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   241
  $ hg show work --color=debug
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   242
  @  [log.changeset changeset.draft changeset.unstable instability.orphan|32f3] [log.description|commit 3]
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   243
  x  [log.changeset changeset.draft changeset.obsolete|6a75] [log.description|commit 2]
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   244
  ~
eb24f1d1b50b show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents: 34191
diff changeset
   245
33049
0b42c7ba46a6 tests: add more tests for names rendering in `hg show work`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32058
diff changeset
   246
  $ cd ..
34191
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   247
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   248
Prefix collision on hashes increases shortest node length
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   249
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   250
  $ hg init hashcollision
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   251
  $ cd hashcollision
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   252
  $ echo 0 > a
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   253
  $ hg -q commit -Am 0
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   254
  $ for i in 17 1057 2857 4025; do
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   255
  >   hg -q up 0
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   256
  >   echo $i > a
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   257
  >   hg -q commit -m $i
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   258
  >   echo 0 > a
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   259
  >   hg commit -m "$i commit 2"
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   260
  > done
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   261
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   262
  $ hg show work
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   263
  @  cfd04 4025 commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   264
  o  c562d 4025
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   265
  | o  08048 2857 commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   266
  | o  c5623 2857
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   267
  |/
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   268
  | o  6a6b6 1057 commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   269
  | o  c5625 1057
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   270
  |/
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   271
  | o  96b4e 17 commit 2
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   272
  | o  11424 17
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   273
  |/
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   274
  o  b4e73 0
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   275
e6b5e7329ff2 show: use consistent (and possibly shorter) node lengths
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33050
diff changeset
   276
  $ cd ..