tests/test-journal.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Wed, 06 Mar 2024 16:10:44 +0100
changeset 51534 767b62cb728e
parent 50808 e9a2e1c77f28
permissions -rw-r--r--
branchcache: gather newly closed head in a dedicated set This is part of a series to more clearly split the update in two step. This will allow us to introduce a fast path during update in a future changeset.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
     1
Tests for the journal extension; records bookmark locations.
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
     2
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
     3
  $ cat >> testmocks.py << EOF
37120
a8a902d7176e procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents: 36607
diff changeset
     4
  > # mock out procutil.getuser() and util.makedate() to supply testable values
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
     5
  > import os
40369
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39705
diff changeset
     6
  > from mercurial import pycompat, util
37120
a8a902d7176e procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents: 36607
diff changeset
     7
  > from mercurial.utils import dateutil, procutil
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
     8
  > def mockgetuser():
37383
cb70be32f5f7 py3: convert user value to bytes by b'' prefix
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37364
diff changeset
     9
  >     return b'foobar'
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    10
  > 
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    11
  > def mockmakedate():
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    12
  >     filename = os.path.join(os.environ['TESTTMP'], 'testtime')
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    13
  >     try:
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    14
  >         with open(filename, 'rb') as timef:
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    15
  >             time = float(timef.read()) + 1
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    16
  >     except IOError:
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    17
  >         time = 0.0
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    18
  >     with open(filename, 'wb') as timef:
37364
1d26f745a10b py3: use pycompat.bytestr in test-journal.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37120
diff changeset
    19
  >         timef.write(pycompat.bytestr(time))
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    20
  >     return (time, 0)
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    21
  > 
37120
a8a902d7176e procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents: 36607
diff changeset
    22
  > procutil.getuser = mockgetuser
36607
c6061cadb400 util: extract all date-related utils in utils/dateutil module
Boris Feld <boris.feld@octobus.net>
parents: 29870
diff changeset
    23
  > dateutil.makedate = mockmakedate
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    24
  > EOF
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    25
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    26
  $ cat >> $HGRCPATH << EOF
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    27
  > [extensions]
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    28
  > journal=
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    29
  > testmocks=`pwd`/testmocks.py
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    30
  > EOF
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    31
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    32
Setup repo
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    33
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    34
  $ hg init repo
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    35
  $ cd repo
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    36
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    37
Test empty journal
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    38
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    39
  $ hg journal
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    40
  previous locations of '.':
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    41
  no recorded locations
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    42
  $ hg journal foo
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    43
  previous locations of 'foo':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    44
  no recorded locations
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    45
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    46
Test that working copy changes are tracked
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    47
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    48
  $ echo a > a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    49
  $ hg commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    50
  $ hg journal
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    51
  previous locations of '.':
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    52
  cb9a9f314b8b  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    53
  $ echo b > a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    54
  $ hg commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    55
  $ hg journal
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    56
  previous locations of '.':
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    57
  1e6c11564562  commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    58
  cb9a9f314b8b  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    59
  $ hg up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    60
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    61
  $ hg journal
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    62
  previous locations of '.':
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    63
  cb9a9f314b8b  up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    64
  1e6c11564562  commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    65
  cb9a9f314b8b  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    66
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    67
Test that bookmarks are tracked
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    68
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    69
  $ hg book -r tip bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    70
  $ hg journal bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    71
  previous locations of 'bar':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    72
  1e6c11564562  book -r tip bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    73
  $ hg book -f bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    74
  $ hg journal bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    75
  previous locations of 'bar':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    76
  cb9a9f314b8b  book -f bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    77
  1e6c11564562  book -r tip bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    78
  $ hg up
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    79
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    80
  updating bookmark bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    81
  $ hg journal bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    82
  previous locations of 'bar':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    83
  1e6c11564562  up
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    84
  cb9a9f314b8b  book -f bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    85
  1e6c11564562  book -r tip bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
    86
50807
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    87
Test that we tracks bookmark deletion
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    88
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    89
  $ hg book -r . babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    90
  $ hg book -f -r .~1 babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    91
  $ hg book -d babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    92
  $ hg journal babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    93
  previous locations of 'babar':
50808
e9a2e1c77f28 journal: track bookmark deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50807
diff changeset
    94
  000000000000  book -d babar
50807
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    95
  cb9a9f314b8b  book -f -r '.~1' babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    96
  1e6c11564562  book -r . babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
    97
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    98
Test that bookmarks and working copy tracking is not mixed
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
    99
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   100
  $ hg journal
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   101
  previous locations of '.':
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   102
  1e6c11564562  up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   103
  cb9a9f314b8b  up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   104
  1e6c11564562  commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   105
  cb9a9f314b8b  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   106
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   107
Test that you can list all entries as well as limit the list or filter on them
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   108
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   109
  $ hg book -r tip baz
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   110
  $ hg journal --all
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   111
  previous locations of the working copy and bookmarks:
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   112
  1e6c11564562  baz       book -r tip baz
50808
e9a2e1c77f28 journal: track bookmark deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50807
diff changeset
   113
  000000000000  babar     book -d babar
50807
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   114
  cb9a9f314b8b  babar     book -f -r '.~1' babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   115
  1e6c11564562  babar     book -r . babar
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   116
  1e6c11564562  bar       up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   117
  1e6c11564562  .         up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   118
  cb9a9f314b8b  bar       book -f bar
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   119
  1e6c11564562  bar       book -r tip bar
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   120
  cb9a9f314b8b  .         up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   121
  1e6c11564562  .         commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   122
  cb9a9f314b8b  .         commit -Aqm a
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   123
  $ hg journal --limit 2
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   124
  previous locations of '.':
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   125
  1e6c11564562  up
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   126
  cb9a9f314b8b  up 0
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   127
  $ hg journal bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   128
  previous locations of 'bar':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   129
  1e6c11564562  up
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   130
  cb9a9f314b8b  book -f bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   131
  1e6c11564562  book -r tip bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   132
  $ hg journal foo
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   133
  previous locations of 'foo':
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   134
  no recorded locations
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   135
  $ hg journal .
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   136
  previous locations of '.':
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   137
  1e6c11564562  up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   138
  cb9a9f314b8b  up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   139
  1e6c11564562  commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   140
  cb9a9f314b8b  commit -Aqm a
29504
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   141
  $ hg journal "re:ba."
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   142
  previous locations of 're:ba.':
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   143
  1e6c11564562  baz       book -r tip baz
50808
e9a2e1c77f28 journal: track bookmark deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50807
diff changeset
   144
  000000000000  babar     book -d babar
50807
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   145
  cb9a9f314b8b  babar     book -f -r '.~1' babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   146
  1e6c11564562  babar     book -r . babar
29504
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   147
  1e6c11564562  bar       up
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   148
  cb9a9f314b8b  bar       book -f bar
7503d8874617 journal: add support for seaching by pattern
Martijn Pieters <mjpieters@fb.com>
parents: 29502
diff changeset
   149
  1e6c11564562  bar       book -r tip bar
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   150
29677
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   151
Test that verbose, JSON, template and commit output work
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   152
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   153
  $ hg journal --verbose --all
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   154
  previous locations of the working copy and bookmarks:
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   155
  000000000000 -> 1e6c11564562 foobar    baz      1970-01-01 00:00 +0000  book -r tip baz
50808
e9a2e1c77f28 journal: track bookmark deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50807
diff changeset
   156
  cb9a9f314b8b -> 000000000000 foobar    babar    1970-01-01 00:00 +0000  book -d babar
50807
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   157
  1e6c11564562 -> cb9a9f314b8b foobar    babar    1970-01-01 00:00 +0000  book -f -r '.~1' babar
8ef9cdffad6a journal: show that we do not track deletion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40369
diff changeset
   158
  000000000000 -> 1e6c11564562 foobar    babar    1970-01-01 00:00 +0000  book -r . babar
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   159
  cb9a9f314b8b -> 1e6c11564562 foobar    bar      1970-01-01 00:00 +0000  up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   160
  cb9a9f314b8b -> 1e6c11564562 foobar    .        1970-01-01 00:00 +0000  up
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   161
  1e6c11564562 -> cb9a9f314b8b foobar    bar      1970-01-01 00:00 +0000  book -f bar
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   162
  000000000000 -> 1e6c11564562 foobar    bar      1970-01-01 00:00 +0000  book -r tip bar
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   163
  1e6c11564562 -> cb9a9f314b8b foobar    .        1970-01-01 00:00 +0000  up 0
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   164
  cb9a9f314b8b -> 1e6c11564562 foobar    .        1970-01-01 00:00 +0000  commit -Aqm b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   165
  000000000000 -> cb9a9f314b8b foobar    .        1970-01-01 00:00 +0000  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   166
  $ hg journal --verbose -Tjson
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   167
  [
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   168
   {
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   169
    "command": "up",
37770
31750413f8d7 formatter: convert timestamp to int
Yuya Nishihara <yuya@tcha.org>
parents: 37383
diff changeset
   170
    "date": [5, 0],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   171
    "name": ".",
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   172
    "newnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   173
    "oldnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   174
    "user": "foobar"
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   175
   },
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   176
   {
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   177
    "command": "up 0",
37770
31750413f8d7 formatter: convert timestamp to int
Yuya Nishihara <yuya@tcha.org>
parents: 37383
diff changeset
   178
    "date": [2, 0],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   179
    "name": ".",
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   180
    "newnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   181
    "oldnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   182
    "user": "foobar"
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   183
   },
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   184
   {
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   185
    "command": "commit -Aqm b",
37770
31750413f8d7 formatter: convert timestamp to int
Yuya Nishihara <yuya@tcha.org>
parents: 37383
diff changeset
   186
    "date": [1, 0],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   187
    "name": ".",
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   188
    "newnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   189
    "oldnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   190
    "user": "foobar"
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   191
   },
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   192
   {
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   193
    "command": "commit -Aqm a",
37770
31750413f8d7 formatter: convert timestamp to int
Yuya Nishihara <yuya@tcha.org>
parents: 37383
diff changeset
   194
    "date": [0, 0],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   195
    "name": ".",
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   196
    "newnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   197
    "oldnodes": ["0000000000000000000000000000000000000000"],
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   198
    "user": "foobar"
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   199
   }
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   200
  ]
29677
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   201
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   202
  $ cat <<EOF >> $HGRCPATH
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   203
  > [templates]
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   204
  > j = "{oldnodes % '{node|upper}'} -> {newnodes % '{node|upper}'}
29677
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   205
  >      - user: {user}
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   206
  >      - command: {command}
29679
e54bdd3aa23b journal: use fm.formatdate() to pass date tuple in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29677
diff changeset
   207
  >      - date: {date|rfc3339date}
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   208
  >      - newnodes: {newnodes}
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   209
  >      - oldnodes: {oldnodes}
29677
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   210
  >      "
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   211
  > EOF
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   212
  $ hg journal -Tj -l1
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   213
  previous locations of '.':
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   214
  CB9A9F314B8B07BA71012FCDBC544B5A4D82FF5B -> 1E6C11564562B4ED919BACA798BC4338BD299D6A
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   215
  - user: foobar
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   216
  - command: up
29679
e54bdd3aa23b journal: use fm.formatdate() to pass date tuple in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29677
diff changeset
   217
  - date: 1970-01-01T00:00:05+00:00
39701
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   218
  - newnodes: 1e6c11564562b4ed919baca798bc4338bd299d6a
dea771e63c3c journal: unify template name for "nodes" (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 37770
diff changeset
   219
  - oldnodes: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
29677
69890b5dd32b journal: use fm.formatlist() to pass hashes in appropriate type (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 29675
diff changeset
   220
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   221
  $ hg journal --commit
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   222
  previous locations of '.':
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   223
  1e6c11564562  up
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   224
  changeset:   1:1e6c11564562
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   225
  bookmark:    bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   226
  bookmark:    baz
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   227
  tag:         tip
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   228
  user:        test
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   229
  date:        Thu Jan 01 00:00:00 1970 +0000
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   230
  summary:     b
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   231
  
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   232
  cb9a9f314b8b  up 0
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   233
  changeset:   0:cb9a9f314b8b
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   234
  user:        test
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   235
  date:        Thu Jan 01 00:00:00 1970 +0000
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   236
  summary:     a
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   237
  
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   238
  1e6c11564562  commit -Aqm b
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   239
  changeset:   1:1e6c11564562
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   240
  bookmark:    bar
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   241
  bookmark:    baz
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   242
  tag:         tip
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   243
  user:        test
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   244
  date:        Thu Jan 01 00:00:00 1970 +0000
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   245
  summary:     b
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   246
  
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   247
  cb9a9f314b8b  commit -Aqm a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   248
  changeset:   0:cb9a9f314b8b
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   249
  user:        test
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   250
  date:        Thu Jan 01 00:00:00 1970 +0000
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   251
  summary:     a
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   252
  
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   253
39704
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   254
  $ hg journal --commit -Tjson
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   255
  [
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   256
   {
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   257
    "changesets": [{"bookmarks": ["bar", "baz"], "branch": "default", "date": [0, 0], "desc": "b", "node": "1e6c11564562b4ed919baca798bc4338bd299d6a", "parents": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"], "phase": "draft", "rev": 1, "tags": ["tip"], "user": "test"}],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   258
    "command": "up",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   259
    "date": [5, 0],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   260
    "name": ".",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   261
    "newnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   262
    "oldnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   263
    "user": "foobar"
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   264
   },
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   265
   {
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   266
    "changesets": [{"bookmarks": [], "branch": "default", "date": [0, 0], "desc": "a", "node": "cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b", "parents": ["0000000000000000000000000000000000000000"], "phase": "draft", "rev": 0, "tags": [], "user": "test"}],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   267
    "command": "up 0",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   268
    "date": [2, 0],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   269
    "name": ".",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   270
    "newnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   271
    "oldnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   272
    "user": "foobar"
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   273
   },
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   274
   {
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   275
    "changesets": [{"bookmarks": ["bar", "baz"], "branch": "default", "date": [0, 0], "desc": "b", "node": "1e6c11564562b4ed919baca798bc4338bd299d6a", "parents": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"], "phase": "draft", "rev": 1, "tags": ["tip"], "user": "test"}],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   276
    "command": "commit -Aqm b",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   277
    "date": [1, 0],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   278
    "name": ".",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   279
    "newnodes": ["1e6c11564562b4ed919baca798bc4338bd299d6a"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   280
    "oldnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   281
    "user": "foobar"
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   282
   },
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   283
   {
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   284
    "changesets": [{"bookmarks": [], "branch": "default", "date": [0, 0], "desc": "a", "node": "cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b", "parents": ["0000000000000000000000000000000000000000"], "phase": "draft", "rev": 0, "tags": [], "user": "test"}],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   285
    "command": "commit -Aqm a",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   286
    "date": [0, 0],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   287
    "name": ".",
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   288
    "newnodes": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   289
    "oldnodes": ["0000000000000000000000000000000000000000"],
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   290
    "user": "foobar"
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   291
   }
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   292
  ]
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   293
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   294
  $ hg journal --commit \
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   295
  > -T'command: {command}\n{changesets % " rev: {rev}\n children: {children}\n"}'
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   296
  previous locations of '.':
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   297
  command: up
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   298
   rev: 1
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   299
   children: 
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   300
  command: up 0
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   301
   rev: 0
39705
fa681452b249 log: make changesetformatter pass in changectx to formatter
Yuya Nishihara <yuya@tcha.org>
parents: 39704
diff changeset
   302
   children: 1:1e6c11564562
39704
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   303
  command: commit -Aqm b
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   304
   rev: 1
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   305
   children: 
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   306
  command: commit -Aqm a
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   307
   rev: 0
39705
fa681452b249 log: make changesetformatter pass in changectx to formatter
Yuya Nishihara <yuya@tcha.org>
parents: 39704
diff changeset
   308
   children: 1:1e6c11564562
39704
aa647457df14 journal: use changesetformatter to properly nest list of commits in JSON
Yuya Nishihara <yuya@tcha.org>
parents: 39701
diff changeset
   309
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   310
Test for behaviour on unexpected storage version information
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   311
29870
6d11ae3c4c4b journal: rename on disk files to 'namejournal'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29679
diff changeset
   312
  $ printf '42\0' > .hg/namejournal
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   313
  $ hg journal
29502
8361131b4768 journal: add dirstate tracking
Martijn Pieters <mjpieters@fb.com>
parents: 29443
diff changeset
   314
  previous locations of '.':
29443
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   315
  abort: unknown journal file version '42'
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   316
  [255]
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   317
  $ hg book -r tip doomed
cf092a3d202a journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff changeset
   318
  unsupported journal file version '42'