##// END OF EJS Templates
py3: use absolute_import in test-filecache.py
Robert Stanca -
r28741:fc5f5483 default
parent child Browse files
Show More
@@ -1,262 +1,261 b''
1 1 #require test-repo
2 2
3 3 $ cd "$TESTDIR"/..
4 4
5 5 $ hg files 'set:(**.py)' | sed 's|\\|/|g' | xargs python contrib/check-py3-compat.py
6 6 doc/check-seclevel.py not using absolute_import
7 7 doc/gendoc.py not using absolute_import
8 8 doc/hgmanpage.py not using absolute_import
9 9 hgext/color.py not using absolute_import
10 10 hgext/eol.py not using absolute_import
11 11 hgext/extdiff.py not using absolute_import
12 12 hgext/factotum.py not using absolute_import
13 13 hgext/fetch.py not using absolute_import
14 14 hgext/fsmonitor/pywatchman/__init__.py not using absolute_import
15 15 hgext/fsmonitor/pywatchman/__init__.py requires print_function
16 16 hgext/fsmonitor/pywatchman/capabilities.py not using absolute_import
17 17 hgext/fsmonitor/pywatchman/pybser.py not using absolute_import
18 18 hgext/gpg.py not using absolute_import
19 19 hgext/graphlog.py not using absolute_import
20 20 hgext/hgcia.py not using absolute_import
21 21 hgext/hgk.py not using absolute_import
22 22 hgext/highlight/__init__.py not using absolute_import
23 23 hgext/highlight/highlight.py not using absolute_import
24 24 hgext/histedit.py not using absolute_import
25 25 hgext/largefiles/__init__.py not using absolute_import
26 26 hgext/largefiles/basestore.py not using absolute_import
27 27 hgext/largefiles/lfcommands.py not using absolute_import
28 28 hgext/largefiles/lfutil.py not using absolute_import
29 29 hgext/largefiles/localstore.py not using absolute_import
30 30 hgext/largefiles/overrides.py not using absolute_import
31 31 hgext/largefiles/proto.py not using absolute_import
32 32 hgext/largefiles/remotestore.py not using absolute_import
33 33 hgext/largefiles/reposetup.py not using absolute_import
34 34 hgext/largefiles/uisetup.py not using absolute_import
35 35 hgext/largefiles/wirestore.py not using absolute_import
36 36 hgext/mq.py not using absolute_import
37 37 hgext/rebase.py not using absolute_import
38 38 hgext/share.py not using absolute_import
39 39 hgext/win32text.py not using absolute_import
40 40 i18n/check-translation.py not using absolute_import
41 41 i18n/polib.py not using absolute_import
42 42 setup.py not using absolute_import
43 43 tests/heredoctest.py requires print_function
44 44 tests/killdaemons.py not using absolute_import
45 45 tests/md5sum.py not using absolute_import
46 46 tests/mockblackbox.py not using absolute_import
47 47 tests/printenv.py not using absolute_import
48 48 tests/readlink.py not using absolute_import
49 49 tests/readlink.py requires print_function
50 50 tests/revlog-formatv0.py not using absolute_import
51 51 tests/run-tests.py not using absolute_import
52 52 tests/sitecustomize.py not using absolute_import
53 53 tests/svn-safe-append.py not using absolute_import
54 54 tests/svnxml.py not using absolute_import
55 55 tests/test-atomictempfile.py not using absolute_import
56 56 tests/test-demandimport.py not using absolute_import
57 57 tests/test-demandimport.py requires print_function
58 58 tests/test-doctest.py not using absolute_import
59 tests/test-filecache.py not using absolute_import
60 59 tests/test-filecache.py requires print_function
61 60 tests/test-filelog.py not using absolute_import
62 61 tests/test-filelog.py requires print_function
63 62 tests/test-hg-parseurl.py not using absolute_import
64 63 tests/test-hg-parseurl.py requires print_function
65 64 tests/test-hgweb-auth.py not using absolute_import
66 65 tests/test-hgweb-auth.py requires print_function
67 66 tests/test-hgwebdir-paths.py not using absolute_import
68 67 tests/test-hybridencode.py not using absolute_import
69 68 tests/test-hybridencode.py requires print_function
70 69 tests/test-lrucachedict.py not using absolute_import
71 70 tests/test-lrucachedict.py requires print_function
72 71 tests/test-manifest.py not using absolute_import
73 72 tests/test-minirst.py not using absolute_import
74 73 tests/test-minirst.py requires print_function
75 74 tests/test-parseindex2.py not using absolute_import
76 75 tests/test-parseindex2.py requires print_function
77 76 tests/test-pathencode.py not using absolute_import
78 77 tests/test-pathencode.py requires print_function
79 78 tests/test-propertycache.py not using absolute_import
80 79 tests/test-propertycache.py requires print_function
81 80 tests/test-revlog-ancestry.py not using absolute_import
82 81 tests/test-revlog-ancestry.py requires print_function
83 82 tests/test-run-tests.py not using absolute_import
84 83 tests/test-simplemerge.py not using absolute_import
85 84 tests/test-status-inprocess.py not using absolute_import
86 85 tests/test-status-inprocess.py requires print_function
87 86 tests/test-symlink-os-yes-fs-no.py not using absolute_import
88 87 tests/test-trusted.py not using absolute_import
89 88 tests/test-trusted.py requires print_function
90 89 tests/test-ui-color.py not using absolute_import
91 90 tests/test-url.py not using absolute_import
92 91
93 92 #if py3exe
94 93 $ hg files 'set:(**.py)' | sed 's|\\|/|g' | xargs $PYTHON3 contrib/check-py3-compat.py
95 94 contrib/check-code.py: invalid syntax: (unicode error) 'unicodeescape' codec can't decode bytes in position *-*: malformed \N character escape (<unknown>, line *) (glob)
96 95 doc/hgmanpage.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
97 96 hgext/acl.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
98 97 hgext/automv.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
99 98 hgext/blackbox.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
100 99 hgext/bugzilla.py: error importing module: <ImportError> No module named 'urlparse' (line *) (glob)
101 100 hgext/censor.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
102 101 hgext/chgserver.py: error importing module: <ImportError> No module named 'SocketServer' (line *) (glob)
103 102 hgext/children.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
104 103 hgext/churn.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
105 104 hgext/clonebundles.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
106 105 hgext/color.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
107 106 hgext/convert/bzr.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line *) (glob)
108 107 hgext/convert/common.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
109 108 hgext/convert/convcmd.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
110 109 hgext/convert/cvs.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
111 110 hgext/convert/cvsps.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
112 111 hgext/convert/darcs.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
113 112 hgext/convert/filemap.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line *) (glob)
114 113 hgext/convert/git.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
115 114 hgext/convert/gnuarch.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
116 115 hgext/convert/hg.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
117 116 hgext/convert/monotone.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
118 117 hgext/convert/p*.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
119 118 hgext/convert/subversion.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
120 119 hgext/convert/transport.py: error importing module: <ImportError> No module named 'svn.client' (line *) (glob)
121 120 hgext/eol.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
122 121 hgext/extdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
123 122 hgext/factotum.py: error importing: <ImportError> No module named 'cStringIO' (error at url.py:*) (glob)
124 123 hgext/fetch.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
125 124 hgext/fsmonitor/state.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
126 125 hgext/fsmonitor/watchmanclient.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
127 126 hgext/gpg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
128 127 hgext/graphlog.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
129 128 hgext/hgcia.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
130 129 hgext/hgk.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
131 130 hgext/highlight/highlight.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
132 131 hgext/histedit.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
133 132 hgext/keyword.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
134 133 hgext/largefiles/basestore.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
135 134 hgext/largefiles/lfcommands.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
136 135 hgext/largefiles/lfutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
137 136 hgext/largefiles/localstore.py: error importing module: <ImportError> No module named 'lfutil' (line *) (glob)
138 137 hgext/largefiles/overrides.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
139 138 hgext/largefiles/proto.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
140 139 hgext/largefiles/remotestore.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
141 140 hgext/largefiles/reposetup.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
142 141 hgext/largefiles/uisetup.py: error importing module: <SyntaxError> invalid syntax (archival.py, line *) (line *) (glob)
143 142 hgext/largefiles/wirestore.py: error importing module: <ImportError> No module named 'lfutil' (line *) (glob)
144 143 hgext/mq.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
145 144 hgext/notify.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
146 145 hgext/pager.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
147 146 hgext/patchbomb.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
148 147 hgext/purge.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
149 148 hgext/rebase.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
150 149 hgext/record.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
151 150 hgext/relink.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
152 151 hgext/schemes.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
153 152 hgext/share.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
154 153 hgext/shelve.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
155 154 hgext/strip.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
156 155 hgext/transplant.py: error importing: <SyntaxError> invalid syntax (bundle*.py, line *) (error at bundlerepo.py:*) (glob)
157 156 hgext/win*text.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
158 157 mercurial/archival.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
159 158 mercurial/bookmarks.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
160 159 mercurial/branchmap.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
161 160 mercurial/bundle*.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
162 161 mercurial/bundlerepo.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
163 162 mercurial/byterange.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
164 163 mercurial/changegroup.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
165 164 mercurial/changelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
166 165 mercurial/cmdutil.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
167 166 mercurial/commands.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
168 167 mercurial/commandserver.py: error importing module: <ImportError> No module named 'SocketServer' (line *) (glob)
169 168 mercurial/config.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
170 169 mercurial/context.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
171 170 mercurial/copies.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
172 171 mercurial/crecord.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
173 172 mercurial/destutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
174 173 mercurial/dirstate.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
175 174 mercurial/discovery.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
176 175 mercurial/dispatch.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
177 176 mercurial/exchange.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
178 177 mercurial/extensions.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
179 178 mercurial/filelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
180 179 mercurial/filemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
181 180 mercurial/fileset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
182 181 mercurial/formatter.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
183 182 mercurial/graphmod.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
184 183 mercurial/help.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
185 184 mercurial/hg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
186 185 mercurial/hgweb/common.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line *) (glob)
187 186 mercurial/hgweb/hgweb_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
188 187 mercurial/hgweb/hgwebdir_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
189 188 mercurial/hgweb/protocol.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
190 189 mercurial/hgweb/request.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
191 190 mercurial/hgweb/server.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line *) (glob)
192 191 mercurial/hgweb/webcommands.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
193 192 mercurial/hgweb/webutil.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
194 193 mercurial/hgweb/wsgicgi.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
195 194 mercurial/hook.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
196 195 mercurial/httpclient/_readers.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
197 196 mercurial/httpconnection.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
198 197 mercurial/httppeer.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
199 198 mercurial/keepalive.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
200 199 mercurial/localrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
201 200 mercurial/lock.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
202 201 mercurial/mail.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
203 202 mercurial/manifest.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
204 203 mercurial/match.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
205 204 mercurial/mdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
206 205 mercurial/merge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
207 206 mercurial/minirst.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
208 207 mercurial/namespaces.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:*) (glob)
209 208 mercurial/obsolete.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
210 209 mercurial/patch.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
211 210 mercurial/pathutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
212 211 mercurial/peer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
213 212 mercurial/pure/mpatch.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
214 213 mercurial/pure/parsers.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
215 214 mercurial/pushkey.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
216 215 mercurial/pvec.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
217 216 mercurial/registrar.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
218 217 mercurial/repair.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
219 218 mercurial/repoview.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
220 219 mercurial/revlog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
221 220 mercurial/revset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
222 221 mercurial/scmutil.py: error importing module: <ImportError> No module named 'Queue' (line *) (glob)
223 222 mercurial/scmwindows.py: error importing module: <ImportError> No module named '_winreg' (line *) (glob)
224 223 mercurial/similar.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
225 224 mercurial/simplemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
226 225 mercurial/sshpeer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
227 226 mercurial/sshserver.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
228 227 mercurial/sslutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
229 228 mercurial/statichttprepo.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
230 229 mercurial/store.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
231 230 mercurial/streamclone.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
232 231 mercurial/subrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
233 232 mercurial/tagmerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
234 233 mercurial/tags.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
235 234 mercurial/templatefilters.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
236 235 mercurial/templatekw.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:*) (glob)
237 236 mercurial/templater.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
238 237 mercurial/transaction.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
239 238 mercurial/ui.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
240 239 mercurial/unionrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
241 240 mercurial/url.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
242 241 mercurial/util.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
243 242 mercurial/verify.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
244 243 mercurial/win*.py: error importing module: <ImportError> No module named 'msvcrt' (line *) (glob)
245 244 mercurial/windows.py: error importing module: <ImportError> No module named '_winreg' (line *) (glob)
246 245 mercurial/wireproto.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
247 246 tests/readlink.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
248 247 tests/test-demandimport.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
249 248 tests/test-filecache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
250 249 tests/test-filelog.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
251 250 tests/test-hg-parseurl.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
252 251 tests/test-hgweb-auth.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
253 252 tests/test-hybridencode.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
254 253 tests/test-lrucachedict.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
255 254 tests/test-minirst.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
256 255 tests/test-parseindex*.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
257 256 tests/test-propertycache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
258 257 tests/test-revlog-ancestry.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
259 258 tests/test-status-inprocess.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
260 259 tests/test-trusted.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
261 260
262 261 #endif
@@ -1,184 +1,187 b''
1 import sys, os, subprocess
1 from __future__ import absolute_import
2 import os
3 import subprocess
4 import sys
2 5
3 6 if subprocess.call(['python', '%s/hghave' % os.environ['TESTDIR'],
4 7 'cacheable']):
5 8 sys.exit(80)
6 9
7 10 from mercurial import util, scmutil, extensions, hg, ui
8 11
9 12 filecache = scmutil.filecache
10 13
11 14 class fakerepo(object):
12 15 def __init__(self):
13 16 self._filecache = {}
14 17
15 18 def join(self, p):
16 19 return p
17 20
18 21 def sjoin(self, p):
19 22 return p
20 23
21 24 @filecache('x', 'y')
22 25 def cached(self):
23 26 print 'creating'
24 27 return 'string from function'
25 28
26 29 def invalidate(self):
27 30 for k in self._filecache:
28 31 try:
29 32 delattr(self, k)
30 33 except AttributeError:
31 34 pass
32 35
33 36 def basic(repo):
34 37 print "* neither file exists"
35 38 # calls function
36 39 repo.cached
37 40
38 41 repo.invalidate()
39 42 print "* neither file still exists"
40 43 # uses cache
41 44 repo.cached
42 45
43 46 # create empty file
44 47 f = open('x', 'w')
45 48 f.close()
46 49 repo.invalidate()
47 50 print "* empty file x created"
48 51 # should recreate the object
49 52 repo.cached
50 53
51 54 f = open('x', 'w')
52 55 f.write('a')
53 56 f.close()
54 57 repo.invalidate()
55 58 print "* file x changed size"
56 59 # should recreate the object
57 60 repo.cached
58 61
59 62 repo.invalidate()
60 63 print "* nothing changed with either file"
61 64 # stats file again, reuses object
62 65 repo.cached
63 66
64 67 # atomic replace file, size doesn't change
65 68 # hopefully st_mtime doesn't change as well so this doesn't use the cache
66 69 # because of inode change
67 70 f = scmutil.opener('.')('x', 'w', atomictemp=True)
68 71 f.write('b')
69 72 f.close()
70 73
71 74 repo.invalidate()
72 75 print "* file x changed inode"
73 76 repo.cached
74 77
75 78 # create empty file y
76 79 f = open('y', 'w')
77 80 f.close()
78 81 repo.invalidate()
79 82 print "* empty file y created"
80 83 # should recreate the object
81 84 repo.cached
82 85
83 86 f = open('y', 'w')
84 87 f.write('A')
85 88 f.close()
86 89 repo.invalidate()
87 90 print "* file y changed size"
88 91 # should recreate the object
89 92 repo.cached
90 93
91 94 f = scmutil.opener('.')('y', 'w', atomictemp=True)
92 95 f.write('B')
93 96 f.close()
94 97
95 98 repo.invalidate()
96 99 print "* file y changed inode"
97 100 repo.cached
98 101
99 102 f = scmutil.opener('.')('x', 'w', atomictemp=True)
100 103 f.write('c')
101 104 f.close()
102 105 f = scmutil.opener('.')('y', 'w', atomictemp=True)
103 106 f.write('C')
104 107 f.close()
105 108
106 109 repo.invalidate()
107 110 print "* both files changed inode"
108 111 repo.cached
109 112
110 113 def fakeuncacheable():
111 114 def wrapcacheable(orig, *args, **kwargs):
112 115 return False
113 116
114 117 def wrapinit(orig, *args, **kwargs):
115 118 pass
116 119
117 120 originit = extensions.wrapfunction(util.cachestat, '__init__', wrapinit)
118 121 origcacheable = extensions.wrapfunction(util.cachestat, 'cacheable',
119 122 wrapcacheable)
120 123
121 124 for fn in ['x', 'y']:
122 125 try:
123 126 os.remove(fn)
124 127 except OSError:
125 128 pass
126 129
127 130 basic(fakerepo())
128 131
129 132 util.cachestat.cacheable = origcacheable
130 133 util.cachestat.__init__ = originit
131 134
132 135 def test_filecache_synced():
133 136 # test old behavior that caused filecached properties to go out of sync
134 137 os.system('hg init && echo a >> a && hg ci -qAm.')
135 138 repo = hg.repository(ui.ui())
136 139 # first rollback clears the filecache, but changelog to stays in __dict__
137 140 repo.rollback()
138 141 repo.commit('.')
139 142 # second rollback comes along and touches the changelog externally
140 143 # (file is moved)
141 144 repo.rollback()
142 145 # but since changelog isn't under the filecache control anymore, we don't
143 146 # see that it changed, and return the old changelog without reconstructing
144 147 # it
145 148 repo.commit('.')
146 149
147 150 def setbeforeget(repo):
148 151 os.remove('x')
149 152 os.remove('y')
150 153 repo.cached = 'string set externally'
151 154 repo.invalidate()
152 155 print "* neither file exists"
153 156 print repo.cached
154 157 repo.invalidate()
155 158 f = open('x', 'w')
156 159 f.write('a')
157 160 f.close()
158 161 print "* file x created"
159 162 print repo.cached
160 163
161 164 repo.cached = 'string 2 set externally'
162 165 repo.invalidate()
163 166 print "* string set externally again"
164 167 print repo.cached
165 168
166 169 repo.invalidate()
167 170 f = open('y', 'w')
168 171 f.write('b')
169 172 f.close()
170 173 print "* file y created"
171 174 print repo.cached
172 175
173 176 print 'basic:'
174 177 print
175 178 basic(fakerepo())
176 179 print
177 180 print 'fakeuncacheable:'
178 181 print
179 182 fakeuncacheable()
180 183 test_filecache_synced()
181 184 print
182 185 print 'setbeforeget:'
183 186 print
184 187 setbeforeget(fakerepo())
General Comments 0
You need to be logged in to leave comments. Login now