tests/test-notify-changegroup.t
author Matt Harbison <matt_harbison@yahoo.com>
Wed, 18 Sep 2024 17:50:57 -0400
changeset 51870 9d4ad05bc91c
parent 48879 9987d14ad63f
permissions -rw-r--r--
typing: make `bundlerepository` subclass `localrepository` while type checking Currently, `mercurial/bundlerepo.py` is excluded from pytype, mostly because it complains that various `ui` and `vfs` fields in `localrepository` are missing. (`bundlerepository` dynamically subclasses `localrepository` when it is instantiated, so it works at runtime.) This makes that class hierarchy known to pytype. Having a protocol for `Repository` is probably the right thing to do, but that will be a lot of work and this still reflects the class at runtime. Subclassing also has the benefit of making sure any method overrides have a matching signature, so maybe this is a situation where we do both of these things. (I'm not sure how clear the diagnostics are if a class *almost* implements a protocol, but is missing a method argument or similar.) The subclassing is not done outside of type checking runs to avoid any side effects on already complex code.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
     1
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     2
  $ cat <<EOF >> $HGRCPATH
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     3
  > [extensions]
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     4
  > notify=
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     5
  > 
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     6
  > [hooks]
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     7
  > changegroup.notify = python:hgext.notify.hook
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     8
  > 
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
     9
  > [notify]
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    10
  > sources = push
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    11
  > diffstat = False
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    12
  > maxsubject = 10
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    13
  > 
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    14
  > [usersubs]
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    15
  > foo@bar = *
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    16
  > 
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    17
  > [reposubs]
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    18
  > * = baz
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    19
  > EOF
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    20
  $ hg init a
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
    21
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    22
clone
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    23
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    24
  $ hg --traceback clone a b
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    25
  updating to branch default
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    26
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    27
  $ echo a > b/a
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
    28
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    29
commit
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    30
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    31
  $ hg --traceback --cwd b commit -Ama
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    32
  adding a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    33
  $ echo a >> b/a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    34
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    35
commit
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    36
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    37
  $ hg --traceback --cwd b commit -Amb
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
    38
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    39
push
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
    40
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    41
  $ hg --traceback --cwd b push ../a 2>&1 |
43381
9a43cef9ec59 tests: handle Message-Id line wrapping in test-notify-changegroup.t
Denis Laxalde <denis@laxalde.org>
parents: 39707
diff changeset
    42
  >     "$PYTHON" $TESTDIR/unwrap-message-id.py | \
48879
9987d14ad63f py2: drop some more from __future__ statements
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43381
diff changeset
    43
  >     "$PYTHON" -c 'import sys,re; print(re.sub("\n\t", " ", sys.stdin.read()), end="")'
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    44
  pushing to ../a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    45
  searching for changes
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    46
  adding changesets
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    47
  adding manifests
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    48
  adding file changes
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    49
  added 2 changesets with 2 changes to 1 files
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33721
diff changeset
    50
  MIME-Version: 1.0
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    51
  Content-Type: text/plain; charset="us-ascii"
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    52
  Content-Transfer-Encoding: 7bit
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    53
  Date: * (glob)
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    54
  Subject: * (glob)
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    55
  From: test
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    56
  X-Hg-Notification: changeset cb9a9f314b8b
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    57
  Message-Id: <*> (glob)
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    58
  To: baz, foo@bar
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    59
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
    60
  changeset cb9a9f314b8b in $TESTTMP/a
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12474
diff changeset
    61
  details: $TESTTMP/a?cmd=changeset;node=cb9a9f314b8b
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    62
  summary: a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    63
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
    64
  changeset ba677d0156c1 in $TESTTMP/a
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12474
diff changeset
    65
  details: $TESTTMP/a?cmd=changeset;node=ba677d0156c1
12474
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    66
  summary: b
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    67
  
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    68
  diffs (6 lines):
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    69
  
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    70
  diff -r 000000000000 -r ba677d0156c1 a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    71
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    72
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    73
  @@ -0,0 +1,2 @@
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    74
  +a
f213af8211cc tests: unify test-notify-changegroup
Matt Mackall <mpm@selenic.com>
parents: 11671
diff changeset
    75
  +a
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    76
  $ hg --cwd a rollback
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    77
  repository tip rolled back to revision -1 (undo push)
7043
b714aac1f7b3 tests: add test for notify extension as changegroup hook
Dennis Schoen <ds@1d10t.de>
parents:
diff changeset
    78
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    79
unbundle with unrelated source
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    80
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    81
  $ hg --cwd b bundle ../test.hg ../a
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    82
  searching for changes
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    83
  2 changesets found
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    84
  $ hg --cwd a unbundle ../test.hg
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    85
  adding changesets
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    86
  adding manifests
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    87
  adding file changes
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    88
  added 2 changesets with 2 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35393
diff changeset
    89
  new changesets cb9a9f314b8b:ba677d0156c1 (2 drafts)
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    90
  (run 'hg update' to get a working copy)
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    91
  $ hg --cwd a rollback
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    92
  repository tip rolled back to revision -1 (undo unbundle)
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    93
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    94
unbundle with correct source
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    95
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    96
  $ hg --config notify.sources=unbundle --cwd a unbundle ../test.hg 2>&1 |
43381
9a43cef9ec59 tests: handle Message-Id line wrapping in test-notify-changegroup.t
Denis Laxalde <denis@laxalde.org>
parents: 39707
diff changeset
    97
  >     "$PYTHON" $TESTDIR/unwrap-message-id.py | \
48879
9987d14ad63f py2: drop some more from __future__ statements
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43381
diff changeset
    98
  >     "$PYTHON" -c 'import sys,re; print(re.sub("\n\t", " ", sys.stdin.read()), end="")'
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
    99
  adding changesets
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   100
  adding manifests
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   101
  adding file changes
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   102
  added 2 changesets with 2 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35393
diff changeset
   103
  new changesets cb9a9f314b8b:ba677d0156c1 (2 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33721
diff changeset
   104
  MIME-Version: 1.0
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   105
  Content-Type: text/plain; charset="us-ascii"
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   106
  Content-Transfer-Encoding: 7bit
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   107
  Date: * (glob)
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   108
  Subject: * (glob)
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   109
  From: test
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   110
  X-Hg-Notification: changeset cb9a9f314b8b
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   111
  Message-Id: <*> (glob)
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   112
  To: baz, foo@bar
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   113
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   114
  changeset cb9a9f314b8b in $TESTTMP/a
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   115
  details: $TESTTMP/a?cmd=changeset;node=cb9a9f314b8b
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   116
  summary: a
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   117
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   118
  changeset ba677d0156c1 in $TESTTMP/a
14868
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   119
  details: $TESTTMP/a?cmd=changeset;node=ba677d0156c1
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   120
  summary: b
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   121
  
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   122
  diffs (6 lines):
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   123
  
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   124
  diff -r 000000000000 -r ba677d0156c1 a
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   125
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   126
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   127
  @@ -0,0 +1,2 @@
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   128
  +a
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   129
  +a
cdd6ecfd3bcd test-notify-changegroup: test notifications on unbundle
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   130
  (run 'hg update' to get a working copy)
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   131
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   132
Check that using the first committer as the author of a changeset works:
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   133
Check that the config option works.
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   134
Check that the first committer is indeed used for "From:".
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   135
Check that the merge user is NOT used for "From:"
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   136
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   137
Create new file
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   138
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   139
  $ echo a > b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   140
  $ echo b >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   141
  $ echo c >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   142
  $ hg --traceback --cwd b commit -Amnewfile -u committer_1
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   143
  adding b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   144
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   145
commit as one user
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   146
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   147
  $ echo x > b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   148
  $ echo b >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   149
  $ echo c >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   150
  $ hg --traceback --cwd b commit -Amx -u committer_2
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   151
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   152
commit as other user, change file so we can do an (automatic) merge
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   153
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   154
  $ hg --cwd b up 2
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   155
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   156
  $ echo a > b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   157
  $ echo b >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   158
  $ echo y >> b/b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   159
  $ hg --traceback --cwd b commit -Amy -u committer_3
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   160
  created new head
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   161
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   162
merge as a different user
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   163
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   164
  $ hg --cwd b merge --config notify.fromauthor=True
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   165
  merging b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   166
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   167
  (branch merge, don't forget to commit)
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   168
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   169
  $ hg --traceback --cwd b commit -Am "merged"
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   170
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   171
push
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   172
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   173
  $ hg --traceback --cwd b --config notify.fromauthor=True push ../a 2>&1 |
43381
9a43cef9ec59 tests: handle Message-Id line wrapping in test-notify-changegroup.t
Denis Laxalde <denis@laxalde.org>
parents: 39707
diff changeset
   174
  >     "$PYTHON" $TESTDIR/unwrap-message-id.py | \
48879
9987d14ad63f py2: drop some more from __future__ statements
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43381
diff changeset
   175
  >     "$PYTHON" -c 'import sys,re; print(re.sub("\n\t", " ", sys.stdin.read()), end="")'
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   176
  pushing to ../a
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   177
  searching for changes
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   178
  adding changesets
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   179
  adding manifests
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   180
  adding file changes
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   181
  added 4 changesets with 4 changes to 1 files
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33721
diff changeset
   182
  MIME-Version: 1.0
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   183
  Content-Type: text/plain; charset="us-ascii"
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   184
  Content-Transfer-Encoding: 7bit
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   185
  Date: * (glob)
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   186
  Subject: * (glob)
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   187
  From: committer_1
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   188
  X-Hg-Notification: changeset 84e487dddc58
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   189
  Message-Id: <*> (glob)
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   190
  To: baz, foo@bar
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   191
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   192
  changeset 84e487dddc58 in $TESTTMP/a
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   193
  details: $TESTTMP/a?cmd=changeset;node=84e487dddc58
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   194
  summary: newfile
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   195
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   196
  changeset b29c7a2b6b0c in $TESTTMP/a
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   197
  details: $TESTTMP/a?cmd=changeset;node=b29c7a2b6b0c
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   198
  summary: x
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   199
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   200
  changeset 0957c7d64886 in $TESTTMP/a
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   201
  details: $TESTTMP/a?cmd=changeset;node=0957c7d64886
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   202
  summary: y
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   203
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
   204
  changeset 485b4e6b0249 in $TESTTMP/a
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   205
  details: $TESTTMP/a?cmd=changeset;node=485b4e6b0249
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   206
  summary: merged
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   207
  
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   208
  diffs (7 lines):
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   209
  
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   210
  diff -r ba677d0156c1 -r 485b4e6b0249 b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   211
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   212
  +++ b/b	Thu Jan 01 00:00:00 1970 +0000
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   213
  @@ -0,0 +1,3 @@
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   214
  +x
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   215
  +b
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   216
  +y
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   217
  $ hg --cwd a rollback
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   218
  repository tip rolled back to revision 1 (undo push)
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15447
diff changeset
   219