tests/test-keyword
author Christian Ebert <blacktrash@gmx.net>
Fri, 15 Feb 2008 17:54:58 +0100
changeset 415 d1026365eff6
parent 409 6e2293f7b9f7
child 419 2f179ea3a9aa
permissions -rwxr-xr-x
Fix getnode doc, add doc for patch.diff monkey
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     1
#!/bin/sh
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     2
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     3
cat <<EOF >> $HGRCPATH
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     4
[extensions]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     5
hgext.keyword =
342
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
     6
hgext.mq =
409
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
     7
hgext.notify =
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     8
[keyword]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     9
* =
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    10
b = ignore
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    11
[hooks]
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    12
commit=
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    13
commit.test=cp a hooktest
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    14
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    15
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    16
echo % help
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    17
hg help keyword
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    18
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    19
echo % hg kwdemo
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    20
hg --quiet kwdemo --default \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    21
| sed -e 's![^ ][^ ]*demo.txt,v!/TMP/demo.txt,v!' \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    22
 -e 's/,v [a-z0-9][a-z0-9]* /,v xxxxxxxxxxxx /' \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    23
 -e '/[$]Revision/ s/: [a-z0-9][a-z0-9]* /: xxxxxxxxxxxx /' \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    24
 -e 's! 20[0-9][0-9]/[01][0-9]/[0-3][0-9] [0-2][0-9]:[0-6][0-9]:[0-6][0-9]! 2000/00/00 00:00:00!'
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    25
210
304f9ac35869 kwdemo fixes and tweaks
Christian Ebert <blacktrash@gmx.net>
parents: 209
diff changeset
    26
hg --quiet kwdemo "Branch = {branches}"
304f9ac35869 kwdemo fixes and tweaks
Christian Ebert <blacktrash@gmx.net>
parents: 209
diff changeset
    27
384
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    28
hg init Test-bndl
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    29
cd Test-bndl
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    30
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
    31
echo % kwshrink should exit silently in empty/invalid repo
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
    32
hg kwshrink
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    33
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    34
# Symlinks cannot be created on Windows. The bundle was made with:
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    35
#
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    36
# hg init t
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    37
# cd t
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    38
# echo a > a
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    39
# ln -s a sym
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    40
# hg add sym
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    41
# hg ci -m addsym -u mercurial
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    42
# hg bundle --base null ../test-keyword.hg
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    43
#
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    44
hg pull -u "$TESTDIR/test-keyword.hg" \
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    45
    | sed 's/pulling from.*test-keyword.hg/pulling from test-keyword.hg/'
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    46
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    47
echo 'expand $Id$' > a
223
65a01675a944 Test that pattern does not span more than 1 line
Christian Ebert <blacktrash@gmx.net>
parents: 218
diff changeset
    48
echo 'do not process $Id:' >> a
65a01675a944 Test that pattern does not span more than 1 line
Christian Ebert <blacktrash@gmx.net>
parents: 218
diff changeset
    49
echo 'xxx $' >> a
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    50
echo 'ignore $Id$' > b
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    51
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    52
cat a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    53
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    54
echo % addremove
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    55
hg addremove
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    56
echo % status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    57
hg status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    58
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    59
echo % default keyword expansion including commit hook
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    60
echo % interrupted commit should not change state or run commit hook
337
67b4decdee67 Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 333
diff changeset
    61
hg --debug commit
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    62
echo % status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    63
hg status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    64
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    65
echo % commit
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
    66
hg --debug commit -mabsym -d '0 0' -u 'User Name <user@example.com>'
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    67
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    68
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    69
echo % identify
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    70
hg --quiet identify
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    71
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
    72
cat a b
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
    73
echo % hg cat
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
    74
hg cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    75
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    76
echo
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    77
echo % diff a hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    78
diff a hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    79
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    80
echo % removing commit hook from config
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    81
sed -e '/\[hooks\]/,$ d' $HGRCPATH > $HGRCPATH.nohook
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    82
mv $HGRCPATH.nohook $HGRCPATH
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    83
rm hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    84
384
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    85
echo % bundle
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    86
hg bundle --base null ../kw.hg
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    87
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    88
cd ..
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    89
hg init Test
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    90
cd Test
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
    91
409
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    92
echo % notify on pull to check whether keywords stay as is in email
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    93
echo % ie. if patch.diff wrapper acts as it should
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    94
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    95
cat <<EOF >> $HGRCPATH
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    96
[hooks]
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    97
incoming.notify = python:hgext.notify.hook
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    98
[notify]
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
    99
sources = pull
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   100
diffstat = False
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   101
[reposubs]
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   102
* = Test
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   103
EOF
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   104
384
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
   105
echo % pull from bundle
409
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   106
hg pull -u ../kw.hg 2>&1 | sed -e '/^Date:/,/^diffs (/ d'
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   107
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   108
echo % remove notify config
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   109
sed -e '/\[hooks\]/,$ d' $HGRCPATH > $HGRCPATH.nonotify
6e2293f7b9f7 Add test for patch.diff monkey
Christian Ebert <blacktrash@gmx.net>
parents: 392
diff changeset
   110
mv $HGRCPATH.nonotify $HGRCPATH
384
482c91f8c230 Do not set up kwrepo when pulling from bundlerepo
Christian Ebert <blacktrash@gmx.net>
parents: 381
diff changeset
   111
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   112
echo % touch
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   113
touch a b
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   114
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   115
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   116
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   117
rm sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   118
echo % update
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   119
hg update
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   120
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   121
cat a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   122
336
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   123
echo % check whether expansion is filewise
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   124
echo '$Id$' > c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   125
echo 'tests for different changenodes' >> c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   126
echo % commit c
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   127
hg commit -A -mcndiff -d '1 0' -u 'User Name <user@example.com>'
336
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   128
echo % force expansion
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   129
hg -v kwexpand
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   130
echo % compare changenodes in a c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   131
cat a c
342
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   132
381
17e94f77de6a Prevent expansion in queue repo and for email
Christian Ebert <blacktrash@gmx.net>
parents: 378
diff changeset
   133
echo % qinit -c
17e94f77de6a Prevent expansion in queue repo and for email
Christian Ebert <blacktrash@gmx.net>
parents: 378
diff changeset
   134
hg qinit -c
342
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   135
echo % qimport
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   136
hg qimport -r tip -n mqtest.diff
381
17e94f77de6a Prevent expansion in queue repo and for email
Christian Ebert <blacktrash@gmx.net>
parents: 378
diff changeset
   137
echo % qcommit
17e94f77de6a Prevent expansion in queue repo and for email
Christian Ebert <blacktrash@gmx.net>
parents: 378
diff changeset
   138
hg qcommit -mqtest
342
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   139
echo % keywords should not be expanded in patch
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   140
cat .hg/patches/mqtest.diff
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   141
echo % qpop
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   142
hg qpop
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   143
echo % qgoto - should imply qpush
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   144
hg qgoto mqtest.diff
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   145
echo % cat
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   146
cat c
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   147
echo % qpop and move on
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   148
hg qpop
336
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   149
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   150
echo % copy
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   151
hg cp a c
259
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   152
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   153
echo % kwfiles added
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   154
hg kwfiles
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   155
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   156
echo % commit
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   157
hg --debug commit -ma2c -d '1 0' -u 'User Name <user@example.com>'
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   158
echo % cat a c
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   159
cat a c
249
8df281c5ca8b Make kwfilelog.cmp test reliable
Christian Ebert <blacktrash@gmx.net>
parents: 247
diff changeset
   160
echo % touch copied c after 1 second
8df281c5ca8b Make kwfilelog.cmp test reliable
Christian Ebert <blacktrash@gmx.net>
parents: 247
diff changeset
   161
sleep 1
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   162
touch c
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   163
echo % status
214
b2e63ec251a9 Add forgotten status for touch copy test
Christian Ebert <blacktrash@gmx.net>
parents: 210
diff changeset
   164
hg status
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   165
247
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   166
echo % kwfiles
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   167
hg kwfiles
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   168
224
fd98a9bffcbe Test "hg diff --rev", update _getcmd comment (backwards compatibility)
Christian Ebert <blacktrash@gmx.net>
parents: 223
diff changeset
   169
echo % diff --rev
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   170
hg diff --rev 1 | grep -v 'b/c'
224
fd98a9bffcbe Test "hg diff --rev", update _getcmd comment (backwards compatibility)
Christian Ebert <blacktrash@gmx.net>
parents: 223
diff changeset
   171
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   172
echo % rollback
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   173
hg rollback
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   174
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   175
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   176
echo % update -C
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   177
hg update --clean
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   178
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   179
echo % custom keyword expansion
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   180
echo % try with kwdemo
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   181
hg --quiet kwdemo "Xinfo = {author}: {desc}"
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   182
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   183
cat <<EOF >>$HGRCPATH
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   184
[keywordmaps]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   185
Id = {file} {node|short} {date|rfc822date} {author|user}
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   186
Xinfo = {author}: {desc}
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   187
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   188
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   189
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   190
cat a b
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   191
echo % hg cat
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   192
hg cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   193
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   194
echo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   195
echo '$Xinfo$' >> a
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   196
cat <<EOF >> log
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   197
firstline
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   198
secondline
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   199
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   200
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
   201
echo % interrupted commit should not change state
337
67b4decdee67 Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 333
diff changeset
   202
hg commit
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   203
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   204
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   205
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   206
echo % commit
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   207
hg --debug commit -l log -d '2 0' -u 'User Name <user@example.com>'
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   208
rm log
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   209
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   210
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   211
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   212
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   213
cat a b
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   214
echo % hg cat
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   215
hg cat sym a b
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   216
echo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   217
215
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   218
echo % remove
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   219
hg remove a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   220
hg --debug commit -m rma
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   221
echo % status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   222
hg status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   223
echo % rollback
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   224
hg rollback
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   225
echo % status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   226
hg status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   227
echo % revert a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   228
hg revert --no-backup --rev tip a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   229
echo % cat a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   230
cat a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   231
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   232
echo % clone to test incoming
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   233
cd ..
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   234
hg clone -r1 Test Test-a
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   235
cd Test-a
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   236
cat <<EOF >> .hg/hgrc
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   237
[paths]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   238
default = ../Test
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   239
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   240
echo % incoming
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   241
# remove path to temp dir
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   242
hg incoming | sed -e 's/^\(comparing with \).*\(test-keyword.*\)/\1\2/'
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   243
333
c1521ff40eda Don't use the -i option with sed
Will Maier <willmaier@ml1.net>
parents: 325
diff changeset
   244
sed -e 's/Id.*/& rejecttest/' a > a.new
c1521ff40eda Don't use the -i option with sed
Will Maier <willmaier@ml1.net>
parents: 325
diff changeset
   245
mv a.new a
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   246
echo % commit rejecttest
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   247
hg --debug commit -m'rejects?' -d '3 0' -u 'User Name <user@example.com>'
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   248
echo % export
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   249
hg export -o ../rejecttest.diff tip
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   250
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   251
cd ../Test
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   252
echo % import
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   253
hg import ../rejecttest.diff
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   254
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   255
cat a b
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   256
echo
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   257
echo % rollback
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   258
hg rollback
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   259
echo % clean update
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   260
hg update --clean
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   261
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   262
echo % kwexpand/kwshrink on selected files
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   263
mkdir x
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   264
echo % copy a x/a
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   265
hg copy a x/a
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   266
echo % kwexpand a
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   267
hg --verbose kwexpand a
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   268
echo % kwexpand x/a should abort
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   269
hg --verbose kwexpand x/a
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   270
cd x
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   271
hg --debug commit -m xa -d '3 0' -u 'User Name <user@example.com>'
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   272
echo % cat a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   273
cat a
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   274
echo % kwshrink a inside directory x
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   275
hg --verbose kwshrink a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   276
echo % cat a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   277
cat a
337
67b4decdee67 Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 333
diff changeset
   278
cd ..
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   279
279
1f00dce8de12 Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net>
parents: 267
diff changeset
   280
echo % kwexpand nonexistent
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   281
hg kwexpand nonexistent 2>&1 | sed 's/nonexistent:.*/nonexistent:/'
279
1f00dce8de12 Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net>
parents: 267
diff changeset
   282
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   283
echo % switch off expansion
267
4a24c3acd4f2 Tighten condition for kwshrink/kwexpand test
Christian Ebert <blacktrash@gmx.net>
parents: 259
diff changeset
   284
echo % kwshrink with unknown file u
4a24c3acd4f2 Tighten condition for kwshrink/kwexpand test
Christian Ebert <blacktrash@gmx.net>
parents: 259
diff changeset
   285
cp a u
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   286
hg --verbose kwshrink
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   287
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   288
cat a b
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   289
echo % hg cat
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   290
hg cat sym a b
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   291
echo
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   292
rm $HGRCPATH
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   293
echo % cat
392
45a318c5ea20 test-keyword: make it run under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 384
diff changeset
   294
cat a b
378
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   295
echo % hg cat
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   296
hg cat sym a b
0683aaf458d8 Discard wread/wwrite approach, merge with stable
Christian Ebert <blacktrash@gmx.net>
parents: 376
diff changeset
   297
echo