tests/test-keyword
author Christian Ebert <blacktrash@gmx.net>
Wed, 23 Jan 2008 12:31:41 +0100
changeset 349 c78c74451bac
parent 342 abf7ccaf0788
child 356 d0e8910bbb4b
permissions -rwxr-xr-x
Implement handle and hook for external callers Allows external callers that do not use the command line to pass current hg command to keyword extension. This implementation might change in the future, if wrapping of patch.diff is possible to the effect of avoiding external handles.
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 =
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     7
[keyword]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     8
* =
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     9
b = ignore
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    10
[hooks]
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    11
commit=
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    12
commit.test=cp a hooktest
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    13
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    14
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    15
echo % help
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    16
hg help keyword
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    17
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    18
echo % hg kwdemo
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    19
hg --quiet kwdemo --default \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    20
| sed -e 's![^ ][^ ]*demo.txt,v!/TMP/demo.txt,v!' \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    21
 -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
    22
 -e '/[$]Revision/ s/: [a-z0-9][a-z0-9]* /: xxxxxxxxxxxx /' \
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    23
 -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
    24
210
304f9ac35869 kwdemo fixes and tweaks
Christian Ebert <blacktrash@gmx.net>
parents: 209
diff changeset
    25
hg --quiet kwdemo "Branch = {branches}"
304f9ac35869 kwdemo fixes and tweaks
Christian Ebert <blacktrash@gmx.net>
parents: 209
diff changeset
    26
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    27
hg init Test
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    28
cd Test
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    29
250
b28a2832cba4 Reduce verbosity of kwexpand/kwshrink
Christian Ebert <blacktrash@gmx.net>
parents: 249
diff changeset
    30
echo % kwshrink should exit silently in empty/invalid repo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    31
hg kwshrink
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    32
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    33
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
    34
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
    35
echo 'xxx $' >> a
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    36
echo 'ignore $Id$' > b
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    37
ln -s a sym
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    38
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    39
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    40
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    41
echo % addremove
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    42
hg addremove
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    43
echo % status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    44
hg status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    45
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    46
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
    47
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
    48
hg --debug commit
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    49
echo % status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    50
hg status
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    51
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    52
echo % commit
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
    53
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
    54
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    55
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    56
echo % identify
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    57
hg --quiet identify
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    58
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    59
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    60
echo % hg cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    61
hg cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    62
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    63
echo
294
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    64
echo % diff a hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    65
diff a hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    66
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    67
echo % removing commit hook from config
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    68
sed -e '/\[hooks\]/,$ d' $HGRCPATH > $HGRCPATH.nohook
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    69
mv $HGRCPATH.nohook $HGRCPATH
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    70
rm hooktest
343c5dd8dcda Add commit hook test
Christian Ebert <blacktrash@gmx.net>
parents: 290
diff changeset
    71
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    72
echo % touch
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    73
touch a b
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    74
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    75
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    76
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    77
rm sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    78
echo % update
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    79
hg update
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    80
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
    81
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    82
336
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    83
echo % check whether expansion is filewise
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    84
echo '$Id$' > c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    85
echo 'tests for different changenodes' >> c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    86
echo % commit c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    87
hg commit -A -mcndiff -d '1 0' -u 'User Name <user@example.com>'
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    88
echo % force expansion
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    89
hg -v kwexpand
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    90
echo % compare changenodes in a c
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
    91
cat a c
342
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    92
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    93
echo % qimport
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    94
hg qimport -r tip -n mqtest.diff
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    95
echo % keywords should not be expanded in patch
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    96
cat .hg/patches/mqtest.diff
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    97
echo % qpop
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    98
hg qpop
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
    99
echo % qgoto - should imply qpush
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   100
hg qgoto mqtest.diff
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   101
echo % cat
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   102
cat c
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   103
echo % qpop and move on
abf7ccaf0788 Add a very simple mq test
Christian Ebert <blacktrash@gmx.net>
parents: 338
diff changeset
   104
hg qpop
336
46f5cf3e1a7f Test that expansion is done filewise
Christian Ebert <blacktrash@gmx.net>
parents: 333
diff changeset
   105
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   106
echo % copy
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   107
hg cp a c
259
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   108
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   109
echo % kwfiles added
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   110
hg kwfiles
76402fc0fb58 Test kwfiles working context
Christian Ebert <blacktrash@gmx.net>
parents: 257
diff changeset
   111
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   112
echo % commit
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   113
hg --debug commit -ma2c -d '1 0' -u 'User Name <user@example.com>'
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   114
echo % cat a c
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   115
cat a c
249
8df281c5ca8b Make kwfilelog.cmp test reliable
Christian Ebert <blacktrash@gmx.net>
parents: 247
diff changeset
   116
echo % touch copied c after 1 second
8df281c5ca8b Make kwfilelog.cmp test reliable
Christian Ebert <blacktrash@gmx.net>
parents: 247
diff changeset
   117
sleep 1
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   118
touch c
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   119
echo % status
214
b2e63ec251a9 Add forgotten status for touch copy test
Christian Ebert <blacktrash@gmx.net>
parents: 210
diff changeset
   120
hg status
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   121
247
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   122
echo % kwfiles
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   123
hg kwfiles
fc091591de7e Test kwfiles command
Christian Ebert <blacktrash@gmx.net>
parents: 241
diff changeset
   124
224
fd98a9bffcbe Test "hg diff --rev", update _getcmd comment (backwards compatibility)
Christian Ebert <blacktrash@gmx.net>
parents: 223
diff changeset
   125
echo % diff --rev
257
1090221301cf test: use grep instead of grep -F
Christian Ebert <blacktrash@gmx.net>
parents: 256
diff changeset
   126
hg diff --rev 0 | grep -v 'b/c'
224
fd98a9bffcbe Test "hg diff --rev", update _getcmd comment (backwards compatibility)
Christian Ebert <blacktrash@gmx.net>
parents: 223
diff changeset
   127
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   128
echo % rollback
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   129
hg rollback
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   130
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   131
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   132
echo % update -C
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   133
hg update --clean
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   134
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   135
echo % custom keyword expansion
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   136
echo % try with kwdemo
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   137
hg --quiet kwdemo "Xinfo = {author}: {desc}"
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   138
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   139
cat <<EOF >>$HGRCPATH
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   140
[keywordmaps]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   141
Id = {file} {node|short} {date|rfc822date} {author|user}
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   142
Xinfo = {author}: {desc}
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   143
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   144
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   145
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   146
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   147
echo % hg cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   148
hg cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   149
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   150
echo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   151
echo '$Xinfo$' >> a
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   152
cat <<EOF >> log
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   153
firstline
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   154
secondline
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   155
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   156
305
d3cdaa49a644 Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net>
parents: 302
diff changeset
   157
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
   158
hg commit
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   159
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   160
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   161
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   162
echo % commit
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   163
hg --debug commit -l log -d '2 0' -u 'User Name <user@example.com>'
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   164
rm log
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   165
echo % status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   166
hg status
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   167
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   168
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   169
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   170
echo % hg cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   171
hg cat sym a b
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   172
echo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   173
215
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   174
echo % remove
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   175
hg remove a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   176
hg --debug commit -m rma
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   177
echo % status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   178
hg status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   179
echo % rollback
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   180
hg rollback
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   181
echo % status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   182
hg status
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   183
echo % revert a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   184
hg revert --no-backup --rev tip a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   185
echo % cat a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   186
cat a
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   187
ff719fcc10a3 Test remove
Christian Ebert <blacktrash@gmx.net>
parents: 214
diff changeset
   188
echo % clone to test incoming
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   189
cd ..
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   190
hg clone -r0 Test Test-a
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   191
cd Test-a
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   192
cat <<EOF >> .hg/hgrc
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   193
[paths]
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   194
default = ../Test
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   195
EOF
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   196
echo % incoming
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   197
# remove path to temp dir
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   198
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
   199
333
c1521ff40eda Don't use the -i option with sed
Will Maier <willmaier@ml1.net>
parents: 325
diff changeset
   200
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
   201
mv a.new a
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   202
echo % commit rejecttest
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   203
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
   204
echo % export
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   205
hg export -o ../rejecttest.diff tip
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   206
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   207
cd ../Test
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   208
echo % import
323
9107f7a3fd12 test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net>
parents: 316
diff changeset
   209
hg import ../rejecttest.diff
316
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   210
echo % cat
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   211
cat sym a b
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   212
echo
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   213
echo % rollback
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   214
hg rollback
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   215
echo % clean update
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   216
hg update --clean
98656ffb1cec Test potential import conflict
Christian Ebert <blacktrash@gmx.net>
parents: 313
diff changeset
   217
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   218
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
   219
mkdir x
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   220
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
   221
hg copy a x/a
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   222
echo % kwexpand a
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   223
hg --verbose kwexpand a
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   224
echo % kwexpand x/a should abort
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   225
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
   226
cd x
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   227
hg --debug commit -m xa -d '3 0' -u 'User Name <user@example.com>'
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   228
echo % cat a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   229
cat a
281
c6314b110e67 Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net>
parents: 279
diff changeset
   230
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
   231
hg --verbose kwshrink a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   232
echo % cat a
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   233
cat a
337
67b4decdee67 Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 333
diff changeset
   234
cd ..
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   235
279
1f00dce8de12 Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net>
parents: 267
diff changeset
   236
echo % kwexpand nonexistent
1f00dce8de12 Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net>
parents: 267
diff changeset
   237
hg kwexpand nonexistent
1f00dce8de12 Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net>
parents: 267
diff changeset
   238
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   239
echo % switch off expansion
267
4a24c3acd4f2 Tighten condition for kwshrink/kwexpand test
Christian Ebert <blacktrash@gmx.net>
parents: 259
diff changeset
   240
echo % kwshrink with unknown file u
4a24c3acd4f2 Tighten condition for kwshrink/kwexpand test
Christian Ebert <blacktrash@gmx.net>
parents: 259
diff changeset
   241
cp a u
241
e0a846f9f095 Test kwshrink w/ argument while not in top level directory
Christian Ebert <blacktrash@gmx.net>
parents: 224
diff changeset
   242
hg --verbose kwshrink
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   243
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   244
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   245
echo % hg cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   246
hg cat sym a b
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   247
echo
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   248
rm $HGRCPATH
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   249
echo % cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   250
cat sym a b
189
247159261ba5 Add backwards compatible test-suite
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
   251
echo % hg cat
290
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   252
hg cat sym a b
b05795ad5632 Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net>
parents: 281
diff changeset
   253
echo