tests/test-convert-cvs-detectmerge.t
author Jun Wu <quark@fb.com>
Tue, 05 Sep 2017 13:37:36 -0700
changeset 34087 5361771f9714
parent 23675 96529f81e2e9
child 44722 e5e5ee2b60e4
permissions -rw-r--r--
wrapfunction: use functools.partial if possible Every `extensions.bind` call inserts a frame in traceback: ... in closure return func(*(args + a), **kw) which makes traceback noisy. The Python stdlib has a `functools.partial` which is backed by C code and does not pollute traceback. However it does not support instancemethod and sets `args` attribute which could be problematic for alias handling. This patch makes `wrapfunction` use `functools.partial` if we are wrapping a function directly exported by a module (so it's impossible to be a class or instance method), and special handles `wrapfunction` results so alias handling code could handle `args` just fine. As an example, `hg rebase -s . -d . --traceback` got 6 lines removed in my setup: File "hg/mercurial/dispatch.py", line 898, in _dispatch cmdpats, cmdoptions) -File "hg/mercurial/extensions.py", line 333, in closure - return func(*(args + a), **kw) File "hg/hgext/journal.py", line 84, in runcommand return orig(lui, repo, cmd, fullargs, *args) -File "hg/mercurial/extensions.py", line 333, in closure - return func(*(args + a), **kw) File "fb-hgext/hgext3rd/fbamend/hiddenoverride.py", line 119, in runcommand result = orig(lui, repo, cmd, fullargs, *args) File "hg/mercurial/dispatch.py", line 660, in runcommand ret = _runcommand(ui, options, cmd, d) -File "hg/mercurial/extensions.py", line 333, in closure - return func(*(args + a), **kw) File "hg/hgext/pager.py", line 69, in pagecmd return orig(ui, options, cmd, cmdfunc) .... Differential Revision: https://phab.mercurial-scm.org/D632
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20117
diff changeset
     1
#require cvs
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20117
diff changeset
     2
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     3
Test config convert.cvsps.mergefrom config setting.
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     4
(Should test similar mergeto feature, but I don't understand it yet.)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     5
Requires builtin cvsps.
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     6
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     7
  $ CVSROOT=`pwd`/cvsrepo
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
     8
  $ export CVSROOT
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
     9
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    10
  $ cvscall()
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    11
  > {
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    12
  >     cvs -f "$@"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    13
  > }
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    14
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    15
output of 'cvs ci' varies unpredictably, so just discard it
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    16
XXX copied from test-convert-cvs-synthetic
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    17
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    18
  $ cvsci()
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    19
  > {
14569
017ab404e588 tests: fix up date ambiguity in cvs test
Matt Mackall <mpm@selenic.com>
parents: 12640
diff changeset
    20
  >     sleep 1
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    21
  >     cvs -f ci "$@" > /dev/null
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    22
  > }
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    23
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    24
XXX copied from test-convert-cvs-synthetic
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    25
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    26
  $ cat <<EOF >> $HGRCPATH
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    27
  > [extensions]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    28
  > convert =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    29
  > [convert]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    30
  > cvsps.cache = 0
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    31
  > cvsps.mergefrom = \[MERGE from (\S+)\]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
    32
  > EOF
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    33
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    34
create cvs repository with one project
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    35
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    36
  $ cvscall -q -d "$CVSROOT" init
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    37
  $ mkdir cvsrepo/proj
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    38
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    39
populate cvs repository
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    40
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    41
  $ cvscall -Q co proj
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    42
  $ cd proj
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    43
  $ touch file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    44
  $ cvscall -Q add file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    45
  $ cvsci -m"add file1 on trunk"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    46
  cvs commit: Examining .
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    47
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    48
create two release branches
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    49
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    50
  $ cvscall -q tag -b v1_0
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    51
  T file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    52
  $ cvscall -q tag -b v1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    53
  T file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    54
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    55
modify file1 on branch v1_0
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    56
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    57
  $ cvscall -Q update -rv1_0
14824
7698c275aa56 tests: restore previous fix for date ambiguity in cvs test
Mads Kiilerich <mads@kiilerich.com>
parents: 14569
diff changeset
    58
  $ sleep 1
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    59
  $ echo "change" >> file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    60
  $ cvsci -m"add text"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    61
  cvs commit: Examining .
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    62
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    63
make unrelated change on v1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    64
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    65
  $ cvscall -Q update -rv1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    66
  $ touch unrelated
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    67
  $ cvscall -Q add unrelated
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    68
  $ cvsci -m"unrelated change"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    69
  cvs commit: Examining .
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    70
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    71
merge file1 to v1_1
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    72
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    73
  $ cvscall -Q update -jv1_0
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
    74
  RCS file: $TESTTMP/cvsrepo/proj/file1,v
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    75
  retrieving revision 1.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    76
  retrieving revision 1.1.2.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    77
  Merging differences between 1.1 and 1.1.2.1 into file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    78
  $ cvsci -m"add text [MERGE from v1_0]"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    79
  cvs commit: Examining .
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    80
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    81
merge change to trunk
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    82
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    83
  $ cvscall -Q update -A
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    84
  $ cvscall -Q update -jv1_1
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
    85
  RCS file: $TESTTMP/cvsrepo/proj/file1,v
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    86
  retrieving revision 1.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    87
  retrieving revision 1.1.4.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    88
  Merging differences between 1.1 and 1.1.4.1 into file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    89
  $ cvsci -m"add text [MERGE from v1_1]"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    90
  cvs commit: Examining .
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
    91
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    92
non-merged change on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    93
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    94
  $ echo "foo" > file2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    95
  $ cvscall -Q add file2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    96
  $ cvsci -m"add file2 on trunk" file2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    97
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    98
this will create rev 1.3
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
    99
change on trunk to backport
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   100
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   101
  $ echo "backport me" >> file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   102
  $ cvsci -m"add other text" file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   103
  $ cvscall log file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   104
  
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
   105
  RCS file: $TESTTMP/cvsrepo/proj/file1,v
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   106
  Working file: file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   107
  head: 1.3
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   108
  branch:
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   109
  locks: strict
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   110
  access list:
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   111
  symbolic names:
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   112
  	v1_1: 1.1.0.4
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   113
  	v1_0: 1.1.0.2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   114
  keyword substitution: kv
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   115
  total revisions: 5;	selected revisions: 5
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   116
  description:
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   117
  ----------------------------
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   118
  revision 1.3
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   119
  date: * (glob)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   120
  add other text
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   121
  ----------------------------
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   122
  revision 1.2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   123
  date: * (glob)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   124
  add text [MERGE from v1_1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   125
  ----------------------------
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   126
  revision 1.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   127
  date: * (glob)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   128
  branches:  1.1.2;  1.1.4;
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   129
  add file1 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   130
  ----------------------------
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   131
  revision 1.1.4.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   132
  date: * (glob)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   133
  add text [MERGE from v1_0]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   134
  ----------------------------
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   135
  revision 1.1.2.1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   136
  date: * (glob)
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   137
  add text
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   138
  =============================================================================
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   139
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   140
XXX how many ways are there to spell "trunk" with CVS?
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   141
backport trunk change to v1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   142
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   143
  $ cvscall -Q update -rv1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   144
  $ cvscall -Q update -j1.2 -j1.3 file1
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
   145
  RCS file: $TESTTMP/cvsrepo/proj/file1,v
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   146
  retrieving revision 1.2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   147
  retrieving revision 1.3
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   148
  Merging differences between 1.2 and 1.3 into file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   149
  $ cvsci -m"add other text [MERGE from HEAD]" file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   150
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   151
fix bug on v1_1, merge to trunk with error
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   152
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   153
  $ cvscall -Q update -rv1_1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   154
  $ echo "merge forward" >> file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   155
  $ cvscall -Q tag unmerged
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   156
  $ cvsci -m"fix file1"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   157
  cvs commit: Examining .
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   158
  $ cvscall -Q update -A
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   159
  $ cvscall -Q update -junmerged -jv1_1
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
   160
  RCS file: $TESTTMP/cvsrepo/proj/file1,v
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   161
  retrieving revision 1.1.4.2
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   162
  retrieving revision 1.1.4.3
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   163
  Merging differences between 1.1.4.2 and 1.1.4.3 into file1
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   164
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   165
note the typo in the commit log message
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   166
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   167
  $ cvsci -m"fix file1 [MERGE from v1-1]"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   168
  cvs commit: Examining .
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   169
  $ cvs -Q tag -d unmerged
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   170
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   171
convert to hg
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   172
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   173
  $ cd ..
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   174
  $ hg convert proj proj.hg
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   175
  initializing destination proj.hg repository
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12585
diff changeset
   176
  connecting to $TESTTMP/cvsrepo
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   177
  scanning source...
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   178
  collecting CVS rlog
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   179
  12 log entries
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   180
  creating changesets
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   181
  warning: CVS commit message references non-existent branch 'v1-1':
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   182
  fix file1 [MERGE from v1-1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   183
  10 changeset entries
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   184
  sorting...
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   185
  converting...
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   186
  9 add file1 on trunk
18376
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   187
  8 unrelated change
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   188
  7 add text
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   189
  6 add text [MERGE from v1_0]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   190
  5 add text [MERGE from v1_1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   191
  4 add file2 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   192
  3 add other text
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   193
  2 add other text [MERGE from HEAD]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   194
  1 fix file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   195
  0 fix file1 [MERGE from v1-1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   196
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   197
complete log
8170
6c4fdde87f90 cvsps: add test for merge detection (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
   198
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   199
  $ template="{rev}: '{branches}' {desc}\n"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   200
  $ hg -R proj.hg log --template="$template"
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   201
  9: '' fix file1 [MERGE from v1-1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   202
  8: 'v1_1' fix file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   203
  7: 'v1_1' add other text [MERGE from HEAD]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   204
  6: '' add other text
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   205
  5: '' add file2 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   206
  4: '' add text [MERGE from v1_1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   207
  3: 'v1_1' add text [MERGE from v1_0]
18376
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   208
  2: 'v1_0' add text
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   209
  1: 'v1_1' unrelated change
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   210
  0: '' add file1 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   211
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   212
graphical log
8171
4e5bd9b97bb3 cvsps: fix crash when log message refers to non-existent branch (issue1615).
Greg Ward <greg-hg@gerg.ca>
parents: 8170
diff changeset
   213
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 18376
diff changeset
   214
  $ hg -R proj.hg log -G --template="$template"
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   215
  o  9: '' fix file1 [MERGE from v1-1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   216
  |
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   217
  | o  8: 'v1_1' fix file1
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   218
  | |
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   219
  | o  7: 'v1_1' add other text [MERGE from HEAD]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   220
  |/|
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   221
  o |  6: '' add other text
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   222
  | |
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   223
  o |  5: '' add file2 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   224
  | |
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   225
  o |  4: '' add text [MERGE from v1_1]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   226
  |\|
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   227
  | o    3: 'v1_1' add text [MERGE from v1_0]
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   228
  | |\
18376
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   229
  +---o  2: 'v1_0' add text
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   230
  | |
18376
13d73bf6be29 convert: make toposort order stable when multiple orderings are possible
Mads Kiilerich <mads@kiilerich.com>
parents: 14824
diff changeset
   231
  | o  1: 'v1_1' unrelated change
12521
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   232
  |/
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   233
  o  0: '' add file1 on trunk
539480ce1c89 tests: unify test-convert-cvs-detectmerge
Matt Mackall <mpm@selenic.com>
parents: 9543
diff changeset
   234