Mercurial > hg
annotate tests/test-install.t @ 31971:73e9328e5307
obsolescence: add test case D-3 for obsolescence markers exchange
About 3 years ago, in August 2014, the logic to select what markers to select on
push was ported from the evolve extension to Mercurial core. However, for some
unclear reasons, the tests for that logic were not ported alongside.
I realised it a couple of weeks ago while working on another push related issue.
I've made a clean up pass on the tests and they are now ready to integrate the
core test suite. This series of changesets do not change any logic. I just adds
test for logic that has been around for about 10 versions of Mercurial.
They are a patch for each test case. It makes it easier to review and postpone
one with documentation issues without rejecting the wholes series.
This patch introduce case D3: missing prune target (prune not in "pushed set")
Each test case comes it in own test file. It help parallelism and does not
introduce a significant overhead from having a single unified giant test file.
Here are timing to support this claim.
# Multiple test files version:
# run-tests.py --local -j 1 test-exchange-*.t
53.40s user 6.82s system 85% cpu 1:10.76 total
52.79s user 6.97s system 85% cpu 1:09.97 total
52.94s user 6.82s system 85% cpu 1:09.69 total
# Single test file version:
# run-tests.py --local -j 1 test-exchange-obsmarkers.t
52.97s user 6.85s system 85% cpu 1:10.10 total
52.64s user 6.79s system 85% cpu 1:09.63 total
53.70s user 7.00s system 85% cpu 1:11.17 total
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Mon, 10 Apr 2017 16:54:43 +0200 |
parents | 876f08f30ade |
children | 85dc5a25f1fc |
rev | line source |
---|---|
4365
46280c004f22
change tests to use simplemerge by default
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3846
diff
changeset
|
1 hg debuginstall |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
2 $ hg debuginstall |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
3 checking encoding (ascii)... |
20741
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
4 checking Python executable (*) (glob) |
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
5 checking Python version (2.*) (glob) |
17392
bdd248666dbc
debuginstall: show directory for Python lib
Adrian Buehlmann <adrian@cadifra.com>
parents:
16934
diff
changeset
|
6 checking Python lib (*lib*)... (glob) |
30222
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
7 checking Python security support (*) (glob) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
8 TLS 1.2 not supported by Python install; network connections lack modern security (?) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
9 SNI not supported by Python install; may have connectivity issues with some servers (?) |
29197
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
10 checking Mercurial version (*) (glob) |
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
11 checking Mercurial custom build (*) (glob) |
29266
b3a677c82a35
debuginstall: expose modulepolicy
timeless <timeless@mozdev.org>
parents:
29219
diff
changeset
|
12 checking module policy (*) (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
13 checking installed modules (*mercurial)... (glob) |
30462
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
14 checking registered compression engines (*zlib*) (glob) |
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
15 checking available compression engines (*zlib*) (glob) |
30762
35b516f800e0
wireproto: advertise supported media types and compression formats
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30462
diff
changeset
|
16 checking available compression engines for wire protocol (*zlib*) (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
17 checking templates (*mercurial?templates)... (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
18 checking default template (*mercurial?templates?map-cmdline.default) (glob) |
28626
60ee2593a270
tests: python executable should always be globbed
Sean Farley <sean@farley.io>
parents:
28544
diff
changeset
|
19 checking commit editor... (* -c "import sys; sys.exit(0)") (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
20 checking username (test) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
21 no problems detected |
9734
36c388a1aa51
commands: call ui.username carefully in debuginstall
Martin Geisler <mg@lazybytes.net>
parents:
4365
diff
changeset
|
22 |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
23 hg debuginstall JSON |
28885
d7e7b3dd44c8
test-install: fix output on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
28626
diff
changeset
|
24 $ hg debuginstall -Tjson | sed 's|\\\\|\\|g' |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
25 [ |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
26 { |
30462
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
27 "compengines": ["bz2", "bz2truncated", "none", "zlib"*], (glob) |
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
28 "compenginesavail": ["bz2", "bz2truncated", "none", "zlib"*], (glob) |
30762
35b516f800e0
wireproto: advertise supported media types and compression formats
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30462
diff
changeset
|
29 "compenginesserver": [*"zlib"*], (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
30 "defaulttemplate": "*mercurial?templates?map-cmdline.default", (glob) |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
31 "defaulttemplateerror": null, |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
32 "defaulttemplatenotfound": "default", |
28626
60ee2593a270
tests: python executable should always be globbed
Sean Farley <sean@farley.io>
parents:
28544
diff
changeset
|
33 "editor": "* -c \"import sys; sys.exit(0)\"", (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
34 "editornotfound": false, |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
35 "encoding": "ascii", |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
36 "encodingerror": null, |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
37 "extensionserror": null, |
29266
b3a677c82a35
debuginstall: expose modulepolicy
timeless <timeless@mozdev.org>
parents:
29219
diff
changeset
|
38 "hgmodulepolicy": "*", (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
39 "hgmodules": "*mercurial", (glob) |
29197
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
40 "hgver": "*", (glob) |
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
41 "hgverextra": "*", (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
42 "problems": 0, |
28544
4d93d73b8aec
tests: python executable path should always be globbed
Danek Duvall <danek.duvall@oracle.com>
parents:
28440
diff
changeset
|
43 "pythonexe": "*", (glob) |
28626
60ee2593a270
tests: python executable should always be globbed
Sean Farley <sean@farley.io>
parents:
28544
diff
changeset
|
44 "pythonlib": "*", (glob) |
30222
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
45 "pythonsecurity": [*], (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
46 "pythonver": "*.*.*", (glob) |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
47 "templatedirs": "*mercurial?templates", (glob) |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
48 "username": "test", |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
49 "usernameerror": null, |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
50 "vinotfound": false |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
51 } |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
52 ] |
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
53 |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
54 hg debuginstall with no username |
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
55 $ HGUSER= hg debuginstall |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
56 checking encoding (ascii)... |
20741
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
57 checking Python executable (*) (glob) |
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
58 checking Python version (2.*) (glob) |
17392
bdd248666dbc
debuginstall: show directory for Python lib
Adrian Buehlmann <adrian@cadifra.com>
parents:
16934
diff
changeset
|
59 checking Python lib (*lib*)... (glob) |
30222
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
60 checking Python security support (*) (glob) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
61 TLS 1.2 not supported by Python install; network connections lack modern security (?) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
62 SNI not supported by Python install; may have connectivity issues with some servers (?) |
29197
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
63 checking Mercurial version (*) (glob) |
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
64 checking Mercurial custom build (*) (glob) |
29266
b3a677c82a35
debuginstall: expose modulepolicy
timeless <timeless@mozdev.org>
parents:
29219
diff
changeset
|
65 checking module policy (*) (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
66 checking installed modules (*mercurial)... (glob) |
30462
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
67 checking registered compression engines (*zlib*) (glob) |
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
68 checking available compression engines (*zlib*) (glob) |
30762
35b516f800e0
wireproto: advertise supported media types and compression formats
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30462
diff
changeset
|
69 checking available compression engines for wire protocol (*zlib*) (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
70 checking templates (*mercurial?templates)... (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
71 checking default template (*mercurial?templates?map-cmdline.default) (glob) |
28626
60ee2593a270
tests: python executable should always be globbed
Sean Farley <sean@farley.io>
parents:
28544
diff
changeset
|
72 checking commit editor... (* -c "import sys; sys.exit(0)") (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
73 checking username... |
20574
5614f8cf0861
ui: suggest config --edit when no username is set
Matt Mackall <mpm@selenic.com>
parents:
17392
diff
changeset
|
74 no username supplied |
12084 | 75 (specify a username in your configuration file) |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
76 1 problems detected, please check your install! |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12084
diff
changeset
|
77 [1] |
24891
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
78 |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
79 path variables are expanded (~ is the same as $TESTTMP) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
80 $ mkdir tools |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
81 $ touch tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
82 #if execbit |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
83 $ chmod 755 tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
84 #endif |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
85 $ hg debuginstall --config ui.editor=~/tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
86 checking encoding (ascii)... |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
87 checking Python executable (*) (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
88 checking Python version (*) (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
89 checking Python lib (*lib*)... (glob) |
30222
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
90 checking Python security support (*) (glob) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
91 TLS 1.2 not supported by Python install; network connections lack modern security (?) |
7b428b00a1d4
commands: print security protocol support in debuginstall
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29266
diff
changeset
|
92 SNI not supported by Python install; may have connectivity issues with some servers (?) |
29197
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
93 checking Mercurial version (*) (glob) |
c5f9ff302065
debuginstall: add mercurial version
timeless <timeless@mozdev.org>
parents:
29090
diff
changeset
|
94 checking Mercurial custom build (*) (glob) |
29266
b3a677c82a35
debuginstall: expose modulepolicy
timeless <timeless@mozdev.org>
parents:
29219
diff
changeset
|
95 checking module policy (*) (glob) |
24891
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
96 checking installed modules (*mercurial)... (glob) |
30462
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
97 checking registered compression engines (*zlib*) (glob) |
356406ac454f
debuginstall: print compression engine support
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30222
diff
changeset
|
98 checking available compression engines (*zlib*) (glob) |
30762
35b516f800e0
wireproto: advertise supported media types and compression formats
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30462
diff
changeset
|
99 checking available compression engines for wire protocol (*zlib*) (glob) |
24891
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
100 checking templates (*mercurial?templates)... (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
101 checking default template (*mercurial?templates?map-cmdline.default) (glob) |
28626
60ee2593a270
tests: python executable should always be globbed
Sean Farley <sean@farley.io>
parents:
28544
diff
changeset
|
102 checking commit editor... (* -c "import sys; sys.exit(0)") (glob) |
28440
855d9b2eea67
debuginstall: convert to formatter
timeless <timeless@mozdev.org>
parents:
27684
diff
changeset
|
103 checking username (test) |
24891
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
104 no problems detected |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
105 |
27442
f67c6d8cc606
test-install: perform the wix checking on wdir() instead of "."
Matt Harbison <matt_harbison@yahoo.com>
parents:
27384
diff
changeset
|
106 #if test-repo |
29219
3c9066ed557c
tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents:
29197
diff
changeset
|
107 $ . "$TESTDIR/helpers-testrepo.sh" |
3c9066ed557c
tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents:
29197
diff
changeset
|
108 |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
109 $ cat >> wixxml.py << EOF |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
110 > import os, subprocess, sys |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
111 > import xml.etree.ElementTree as ET |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
112 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
113 > # MSYS mangles the path if it expands $TESTDIR |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
114 > testdir = os.environ['TESTDIR'] |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
115 > ns = {'wix' : 'http://schemas.microsoft.com/wix/2006/wi'} |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
116 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
117 > def directory(node, relpath): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
118 > '''generator of files in the xml node, rooted at relpath''' |
27519
f4517c88ab81
test-install: embed wix namespace for Python 2.6 compatibility
Yuya Nishihara <yuya@tcha.org>
parents:
27442
diff
changeset
|
119 > dirs = node.findall('./{%(wix)s}Directory' % ns) |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
120 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
121 > for d in dirs: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
122 > for subfile in directory(d, relpath + d.attrib['Name'] + '/'): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
123 > yield subfile |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
124 > |
27519
f4517c88ab81
test-install: embed wix namespace for Python 2.6 compatibility
Yuya Nishihara <yuya@tcha.org>
parents:
27442
diff
changeset
|
125 > files = node.findall('./{%(wix)s}Component/{%(wix)s}File' % ns) |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
126 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
127 > for f in files: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
128 > yield relpath + f.attrib['Name'] |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
129 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
130 > def hgdirectory(relpath): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
131 > '''generator of tracked files, rooted at relpath''' |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
132 > hgdir = "%s/../mercurial" % (testdir) |
27442
f67c6d8cc606
test-install: perform the wix checking on wdir() instead of "."
Matt Harbison <matt_harbison@yahoo.com>
parents:
27384
diff
changeset
|
133 > args = ['hg', '--cwd', hgdir, 'files', relpath] |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
134 > proc = subprocess.Popen(args, stdout=subprocess.PIPE, |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
135 > stderr=subprocess.PIPE) |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
136 > output = proc.communicate()[0] |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
137 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
138 > slash = '/' |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
139 > for line in output.splitlines(): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
140 > if os.name == 'nt': |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
141 > yield line.replace(os.sep, slash) |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
142 > else: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
143 > yield line |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
144 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
145 > tracked = [f for f in hgdirectory(sys.argv[1])] |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
146 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
147 > xml = ET.parse("%s/../contrib/wix/%s.wxs" % (testdir, sys.argv[1])) |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
148 > root = xml.getroot() |
27519
f4517c88ab81
test-install: embed wix namespace for Python 2.6 compatibility
Yuya Nishihara <yuya@tcha.org>
parents:
27442
diff
changeset
|
149 > dir = root.find('.//{%(wix)s}DirectoryRef' % ns) |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
150 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
151 > installed = [f for f in directory(dir, '')] |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
152 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
153 > print('Not installed:') |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
154 > for f in sorted(set(tracked) - set(installed)): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
155 > print(' %s' % f) |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
156 > |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
157 > print('Not tracked:') |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
158 > for f in sorted(set(installed) - set(tracked)): |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
159 > print(' %s' % f) |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
160 > EOF |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
161 |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
162 $ python wixxml.py help |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
163 Not installed: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
164 help/common.txt |
29090
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
28885
diff
changeset
|
165 help/hg-ssh.8.txt |
27383
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
166 help/hg.1.txt |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
167 help/hgignore.5.txt |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
168 help/hgrc.5.txt |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
169 Not tracked: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
170 |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
171 $ python wixxml.py templates |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
172 Not installed: |
b1160299a175
tests: add coverage to ensure Wix tracks 'help' and 'templates' files
Matt Harbison <matt_harbison@yahoo.com>
parents:
24891
diff
changeset
|
173 Not tracked: |
27442
f67c6d8cc606
test-install: perform the wix checking on wdir() instead of "."
Matt Harbison <matt_harbison@yahoo.com>
parents:
27384
diff
changeset
|
174 |
f67c6d8cc606
test-install: perform the wix checking on wdir() instead of "."
Matt Harbison <matt_harbison@yahoo.com>
parents:
27384
diff
changeset
|
175 #endif |