tests/test-convert-authormap.t
author Matt Harbison <matt_harbison@yahoo.com>
Sat, 05 Jan 2019 15:20:33 -0500
changeset 41163 0101a35deae2
parent 35393 4441705b7111
permissions -rw-r--r--
phabricator: warn if unable to amend, instead of aborting after posting There was a divergence in behavior here between obsolete and strip based amending. I first noticed the abort when testing outside of the test harness, but then had trouble recreating it here after reverting the code changes. It turns out, strip based amend was successfully amending the public commit after it was posted! It looks like the protection is in the `commit --amend` command, not in the underlying code that it calls. I considered doing a preflight check and aborting. But the locks are only acquired at the end, if amending, and this is too large a section of code to be wrapped in a maybe-it's-held-or-not context manager for my tastes. Additionally, some people do post-push reviews, and amending is the default behavior, so they shouldn't see a misleading error message. The lack of a 'Differential Revision' entry in the commit message breaks a {phabreview} test, so it had to be partially conditionalized.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7961
52e442fe43f4 convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff changeset
     1
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     2
  $ cat >> $HGRCPATH <<EOF
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     3
  > [extensions]
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     4
  > convert=
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     5
  > EOF
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     6
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     7
Prepare orig repo
7961
52e442fe43f4 convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff changeset
     8
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     9
  $ hg init orig
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    10
  $ cd orig
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    11
  $ echo foo > foo
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    12
  $ HGUSER='user name' hg ci -qAm 'foo'
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    13
  $ cd ..
7961
52e442fe43f4 convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff changeset
    14
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    15
Explicit --authors
7962
62154415821f convert: fix authormap handling of lines without '='
Marti Raudsepp <marti@juffo.org>
parents: 7961
diff changeset
    16
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    17
  $ cat > authormap.txt <<EOF
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    18
  > user name = Long User Name
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    19
  > 
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    20
  > # comment
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    21
  > this line is ignored
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    22
  > EOF
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    23
  $ hg convert --authors authormap.txt orig new
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    24
  initializing destination new repository
16925
eaf6a6d7f015 convert: lowercase status and abort messages
Martin Geisler <mg@aragost.com>
parents: 15447
diff changeset
    25
  ignoring bad line in author map file authormap.txt: this line is ignored
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    26
  scanning source...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    27
  sorting...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    28
  converting...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    29
  0 foo
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 16948
diff changeset
    30
  writing author map file $TESTTMP/new/.hg/authormap
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    31
  $ cat new/.hg/authormap
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    32
  user name=Long User Name
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    33
  $ hg -Rnew log
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    34
  changeset:   0:d89716e88087
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    35
  tag:         tip
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    36
  user:        Long User Name
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    37
  date:        Thu Jan 01 00:00:00 1970 +0000
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    38
  summary:     foo
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    39
  
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    40
  $ rm -rf new
7961
52e442fe43f4 convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff changeset
    41
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    42
Implicit .hg/authormap
7961
52e442fe43f4 convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff changeset
    43
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    44
  $ hg init new
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    45
  $ mv authormap.txt new/.hg/authormap
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    46
  $ hg convert orig new
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 16948
diff changeset
    47
  ignoring bad line in author map file $TESTTMP/new/.hg/authormap: this line is ignored
12511
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    48
  scanning source...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    49
  sorting...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    50
  converting...
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    51
  0 foo
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    52
  $ hg -Rnew log
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    53
  changeset:   0:d89716e88087
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    54
  tag:         tip
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    55
  user:        Long User Name
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    56
  date:        Thu Jan 01 00:00:00 1970 +0000
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    57
  summary:     foo
0fefeb4fff49 tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    58