Attachment 'py.test-pypy1.7.txt'
Download 1 ============================= test session starts ==============================
2 platform linux2 -- Python 2.7.1[pypy-1.7.0-final] -- pytest-2.2.0
3 collecting ... collected 912 items / 10 skipped
4
5 MoinMoin/_tests/test_error.py ......
6 MoinMoin/_tests/test_sourcecode.py .........................................................................................................................................................................................................................................................................
7 MoinMoin/_tests/test_test_environ.py ..
8 MoinMoin/_tests/test_user.py .........................
9 MoinMoin/_tests/test_wikiutil.py ................
10 MoinMoin/apps/admin/_tests/test_admin.py .......
11 MoinMoin/apps/feed/_tests/test_feed.py ..
12 MoinMoin/apps/frontend/_tests/test_frontend.py ..FF...........................................ssss
13 MoinMoin/apps/misc/_tests/test_misc.py ..
14 MoinMoin/apps/serve/_tests/test_serve.py ..
15 MoinMoin/auth/_tests/test_auth.py ......
16 MoinMoin/auth/_tests/test_http.py .
17 MoinMoin/auth/_tests/test_log.py ...
18 MoinMoin/config/_tests/test_defaultconfig.py .
19 MoinMoin/converter/_tests/test__args.py .......
20 MoinMoin/converter/_tests/test__args_wiki.py ....
21 MoinMoin/converter/_tests/test__wiki_macro.py ....
22 MoinMoin/converter/_tests/test_creole_in.py ..........
23 MoinMoin/converter/_tests/test_include.py ...
24 MoinMoin/converter/_tests/test_link.py ....
25 MoinMoin/converter/_tests/test_mediawiki_in.py ....
26 MoinMoin/converter/_tests/test_moinwiki19_in.py .s............
27 MoinMoin/converter/_tests/test_moinwiki_in.py s............
28 MoinMoin/converter/_tests/test_moinwiki_out.py .........
29 MoinMoin/converter/_tests/test_rst_in.py .........
30 MoinMoin/converter/_tests/test_rst_out.py ...........
31 MoinMoin/converter/_tests/test_smiley.py ssssssss
32 MoinMoin/datastruct/backends/_tests/test_composite_dicts.py ....
33 MoinMoin/datastruct/backends/_tests/test_composite_groups.py .............
34 MoinMoin/datastruct/backends/_tests/test_config_dicts.py .....
35 MoinMoin/datastruct/backends/_tests/test_config_groups.py .........
36 MoinMoin/datastruct/backends/_tests/test_lazy_config_groups.py ..................
37 MoinMoin/datastruct/backends/_tests/test_wiki_dicts.py .....
38 MoinMoin/datastruct/backends/_tests/test_wiki_groups.py .............
39 MoinMoin/i18n/_tests/test_i18n.py ..
40 MoinMoin/items/_tests/test_Item.py .......................
41 MoinMoin/macro/_tests/test_Anchor.py .
42 MoinMoin/macro/_tests/test_Date.py ..
43 MoinMoin/macro/_tests/test_DateTime.py .
44 MoinMoin/macro/_tests/test_GetText.py .
45 MoinMoin/macro/_tests/test_GetVal.py .
46 MoinMoin/macro/_tests/test_Verbatim.py .
47 MoinMoin/macro/_tests/test__base.py ....
48 MoinMoin/mail/_tests/test_sendmail.py .........
49 MoinMoin/search/_tests/test_analyzers.py ...
50 MoinMoin/security/_tests/test_security.py ....................
51 MoinMoin/security/_tests/test_textcha.py ...
52 MoinMoin/security/_tests/test_ticket.py .
53 MoinMoin/storage/backends/_tests/test_fileserver.py ....
54 MoinMoin/storage/backends/_tests/test_stores.py ..........
55 MoinMoin/storage/middleware/_tests/test_indexing.py ...............ss
56 MoinMoin/storage/middleware/_tests/test_protecting.py .............................
57 MoinMoin/storage/middleware/_tests/test_routing.py .....
58 MoinMoin/storage/middleware/_tests/test_serialization.py .
59 MoinMoin/storage/stores/_tests/test_all.py ..ss......ss..ss......ss..ss......ss..ss......ss..ss......ssssssssssssss
60 MoinMoin/storage/stores/_tests/test_fs.py ......
61 MoinMoin/storage/stores/_tests/test_memory.py ......
62 MoinMoin/storage/stores/_tests/test_sqlite.py ..........
63 MoinMoin/themes/_tests/test_navi_bar.py .....
64 MoinMoin/util/_tests/test_crypto.py ........
65 MoinMoin/util/_tests/test_diff3.py .
66 MoinMoin/util/_tests/test_diff_html.py ..
67 MoinMoin/util/_tests/test_diff_text.py .
68 MoinMoin/util/_tests/test_filesys.py ....s........
69 MoinMoin/util/_tests/test_forms.py ......
70 MoinMoin/util/_tests/test_interwiki.py .....
71 MoinMoin/util/_tests/test_iri.py ..................
72 MoinMoin/util/_tests/test_lock.py .............
73 MoinMoin/util/_tests/test_md5crypt.py ..
74 MoinMoin/util/_tests/test_mime.py .....
75 MoinMoin/util/_tests/test_mimetype.py ...
76 MoinMoin/util/_tests/test_paramparser.py .......................F..
77 MoinMoin/util/_tests/test_pysupport.py ...ss
78 MoinMoin/util/_tests/test_registry.py ..
79 MoinMoin/util/_tests/test_send_file.py .
80 MoinMoin/util/_tests/test_thread_monitor.py .F
81 MoinMoin/util/_tests/test_tree.py ....
82 MoinMoin/util/_tests/test_util.py .
83 MoinMoin/util/_tests/test_version.py .
84
85 =================================== FAILURES ===================================
86 ________________ TestFrontend.test_ajaxdestroy_item_name_route _________________
87
88 self = <test_frontend.TestFrontend object at 0x0000000007b00090>
89
90 def test_ajaxdestroy_item_name_route(self):
91 self._test_view_post('frontend.ajaxdestroy', status='200 OK', content_types=['application/json', ], data=['{', '}'], form=dict(
92 comment='Test',
93 itemnames='["DoesntExist"]',
94 > ), viewopts=dict(item_name='DoesntExist'))
95
96 MoinMoin/apps/frontend/_tests/test_frontend.py:68:
97 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
98
99 self = <test_frontend.TestFrontend object at 0x0000000007b00090>
100 viewname = 'frontend.ajaxdestroy', status = '200 OK'
101 content_types = ['application/json'], data = ['{', '}']
102 form = {'comment': 'Test', 'itemnames': '["DoesntExist"]'}
103 viewopts = {'item_name': 'DoesntExist'}
104
105 def _test_view_post(self, viewname, status='302 FOUND', content_types=('text/html; charset=utf-8', ), data=('<html>', '</html>'), form=None, viewopts=None):
106 if viewopts is None:
107 viewopts = {}
108 if form is None:
109 form = {}
110 print 'POST %s' % url_for(viewname, **viewopts)
111 with self.app.test_client() as c:
112 rv = c.post(url_for(viewname, **viewopts), data=form)
113 > assert rv.status == status
114 E assert '500 INTERNAL SERVER ERROR' == '200 OK'
115 E - 500 INTERNAL SERVER ERROR
116 E + 200 OK
117
118 MoinMoin/apps/frontend/_tests/test_frontend.py:46: AssertionError
119 ------------------------------- Captured stdout --------------------------------
120 POST /+ajaxdestroy/DoesntExist
121 ------------------------------- Captured stderr --------------------------------
122 2011-12-15 15:59:11,625 ERROR MoinMoin:1210 Exception on /+ajaxdestroy/DoesntExist [POST]
123 Traceback (most recent call last):
124 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1504, in wsgi_app
125 response = self.full_dispatch_request()
126 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1264, in full_dispatch_request
127 rv = self.handle_user_exception(e)
128 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1262, in full_dispatch_request
129 rv = self.dispatch_request()
130 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1248, in dispatch_request
131 return self.view_functions[rule.endpoint](**req.view_args)
132 File "/home/moin/moin-2.0/MoinMoin/apps/frontend/views.py", line 546, in ajaxdestroy
133 item.destroy(comment=comment, destroy_item=True)
134 File "/home/moin/moin-2.0/MoinMoin/items/__init__.py", line 410, in destroy
135 self.rev.item.destroy_all_revisions()
136 AttributeError: 'DummyItem' object has no attribute 'destroy_all_revisions'
137 _______________ TestFrontend.test_ajaxdestroy_no_item_name_route _______________
138
139 self = <test_frontend.TestFrontend object at 0x000000000cdf5c90>
140
141 def test_ajaxdestroy_no_item_name_route(self):
142 self._test_view_post('frontend.ajaxdestroy', status='200 OK', content_types=['application/json', ], data=['{', '}'], form=dict(
143 comment='Test',
144 > itemnames='["DoesntExist"]',
145
146 MoinMoin/apps/frontend/_tests/test_frontend.py:73:
147 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
148
149 self = <test_frontend.TestFrontend object at 0x000000000cdf5c90>
150 viewname = 'frontend.ajaxdestroy', status = '200 OK'
151 content_types = ['application/json'], data = ['{', '}']
152 form = {'comment': 'Test', 'itemnames': '["DoesntExist"]'}, viewopts = {}
153
154 def _test_view_post(self, viewname, status='302 FOUND', content_types=('text/html; charset=utf-8', ), data=('<html>', '</html>'), form=None, viewopts=None):
155 if viewopts is None:
156 viewopts = {}
157 if form is None:
158 form = {}
159 print 'POST %s' % url_for(viewname, **viewopts)
160 with self.app.test_client() as c:
161 rv = c.post(url_for(viewname, **viewopts), data=form)
162 > assert rv.status == status
163 E assert '500 INTERNAL SERVER ERROR' == '200 OK'
164 E - 500 INTERNAL SERVER ERROR
165 E + 200 OK
166
167 MoinMoin/apps/frontend/_tests/test_frontend.py:46: AssertionError
168 ------------------------------- Captured stdout --------------------------------
169 POST /+ajaxdestroy
170 ------------------------------- Captured stderr --------------------------------
171 2011-12-15 15:59:11,713 ERROR MoinMoin:1210 Exception on /+ajaxdestroy [POST]
172 Traceback (most recent call last):
173 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1504, in wsgi_app
174 response = self.full_dispatch_request()
175 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1264, in full_dispatch_request
176 rv = self.handle_user_exception(e)
177 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1262, in full_dispatch_request
178 rv = self.dispatch_request()
179 File "/home/moin/moin-2.0/env-pypy-1.7/site-packages/flask/app.py", line 1248, in dispatch_request
180 return self.view_functions[rule.endpoint](**req.view_args)
181 File "/home/moin/moin-2.0/MoinMoin/apps/frontend/views.py", line 546, in ajaxdestroy
182 item.destroy(comment=comment, destroy_item=True)
183 File "/home/moin/moin-2.0/MoinMoin/items/__init__.py", line 410, in destroy
184 self.rev.item.destroy_all_revisions()
185 AttributeError: 'DummyItem' object has no attribute 'destroy_all_revisions'
186 ______________________ TestExtensionInvoking.testFailing _______________________
187
188 self = <test_paramparser.TestExtensionInvoking object at 0x000000001670c7c8>
189
190 def testFailing(self):
191 ief = paramparser.invoke_extension_function
192
193 pytest.raises(TypeError, ief, hex, u'15')
194 pytest.raises(TypeError, ief, cmp, u'15')
195 > pytest.raises(AttributeError, ief, unicode, u'15')
196
197 MoinMoin/util/_tests/test_paramparser.py:669:
198 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
199
200 function = <type 'unicode'>, args = u'15', fixed_args = []
201
202 def invoke_extension_function(function, args, fixed_args=[]):
203 """
204 Parses arguments for an extension call and calls the extension
205 function with the arguments.
206
207 If the macro function has a default value that is a bool,
208 int, long, float or unicode object, then the given value
209 is converted to the type of that default value before passing
210 it to the macro function. That way, macros need not call the
211 wikiutil.get_* functions for any arguments that have a default.
212
213 :param function: the function to invoke
214 :param args: unicode string with arguments (or evaluating to False)
215 :param fixed_args: fixed arguments to pass as the first arguments
216 :returns: the return value from the function called
217 """
218 from inspect import getargspec, isfunction, isclass, ismethod
219
220 def _convert_arg(value, default, name=None):
221 """
222 Using the get_* functions, convert argument to the type of the default
223 if that is any of bool, int, long, float or unicode; if the default
224 is the type itself then convert to that type (keeps None) or if the
225 default is a list require one of the list items.
226
227 In other cases return the value itself.
228 """
229 # if extending this, extend required_arg as well!
230 if isinstance(default, bool):
231 return get_bool(value, name, default)
232 elif isinstance(default, (int, long)):
233 return get_int(value, name, default)
234 elif isinstance(default, float):
235 return get_float(value, name, default)
236 elif isinstance(default, complex):
237 return get_complex(value, name, default)
238 elif isinstance(default, unicode):
239 return get_unicode(value, name, default)
240 elif isinstance(default, (tuple, list)):
241 return get_choice(value, name, default)
242 elif default is bool:
243 return get_bool(value, name)
244 elif default is int or default is long:
245 return get_int(value, name)
246 elif default is float:
247 return get_float(value, name)
248 elif default is complex:
249 return get_complex(value, name)
250 elif isinstance(default, IEFArgument):
251 # defaults handled later
252 if value is None:
253 return None
254 return default.parse_argument(value)
255 elif isinstance(default, required_arg):
256 if isinstance(default.argtype, (tuple, list)):
257 # treat choice specially and return None if no choice
258 # is given in the value
259 return get_choice(value, name, list(default.argtype),
260 default_none=True)
261 else:
262 return _convert_arg(value, default.argtype, name)
263 return value
264
265 assert isinstance(fixed_args, (list, tuple))
266
267 kwargs = {}
268 kwargs_to_pass = {}
269 trailing_args = []
270
271 if args:
272 assert isinstance(args, unicode)
273
274 positional, keyword, trailing = parse_quoted_separated(args)
275
276 for kw in keyword:
277 try:
278 kwargs[str(kw)] = keyword[kw]
279 except UnicodeEncodeError:
280 kwargs_to_pass[kw] = keyword[kw]
281
282 trailing_args.extend(trailing)
283
284 else:
285 positional = []
286
287 if isfunction(function) or ismethod(function):
288 argnames, varargs, varkw, defaultlist = getargspec(function)
289 elif isclass(function):
290 (argnames, varargs,
291 varkw, defaultlist) = getargspec(function.__init__.im_func)
292 else:
293 raise TypeError('function must be a function, method or class')
294
295 # self is implicit!
296 if ismethod(function) or isclass(function):
297 argnames = argnames[1:]
298
299 fixed_argc = len(fixed_args)
300 argnames = argnames[fixed_argc:]
301 argc = len(argnames)
302 if not defaultlist:
303 defaultlist = []
304
305 # if the fixed parameters have defaults too...
306 if argc < len(defaultlist):
307 defaultlist = defaultlist[fixed_argc:]
308 defstart = argc - len(defaultlist)
309
310 defaults = {}
311 # reverse to be able to pop() things off
312 positional.reverse()
313 allow_kwargs = False
314 allow_trailing = False
315 # convert all arguments to keyword arguments,
316 # fill all arguments that weren't given with None
317 for idx in range(argc):
318 argname = argnames[idx]
319 if argname == '_kwargs':
320 allow_kwargs = True
321 continue
322 if argname == '_trailing_args':
323 allow_trailing = True
324 continue
325 if positional:
326 kwargs[argname] = positional.pop()
327 if not argname in kwargs:
328 kwargs[argname] = None
329 if idx >= defstart:
330 defaults[argname] = defaultlist[idx - defstart]
331
332 if positional:
333 if not allow_trailing:
334 > raise ValueError(_('Too many arguments'))
335 E ValueError: Too many arguments
336
337 MoinMoin/util/paramparser.py:690: ValueError
338 ________________________ TestMonitor.test_trigger_dump _________________________
339
340 self = <test_thread_monitor.TestMonitor object at 0x0000000009aea3d8>
341
342 def test_trigger_dump(self):
343 """ test for trigger_dump """
344 Monitor_test_obj = Monitor()
345 # activate the hook first
346 Monitor_test_obj.activate_hook()
347 f = open(self.src, "w")
348 result = Monitor_test_obj.trigger_dump(f)
349 # read the content of first line
350 f = open(self.src, "r")
351 f.seek(1)
352 > assert 'Dumping thread' in f.readline()
353 E assert 'Dumping thread' in ''
354 E + where '' = <bound method file.readline of <open file '/tmp/test_dumpDwEbzd/test_dumpfile', mode 'r' at 0x000000000999f408>>()
355 E + where <bound method file.readline of <open file '/tmp/test_dumpDwEbzd/test_dumpfile', mode 'r' at 0x000000000999f408>> = <open file '/tmp/test_dumpDwEbzd/test_dumpfile', mode 'r' at 0x000000000999f408>.readline
356
357 MoinMoin/util/_tests/test_thread_monitor.py:45: AssertionError
358 ============== 4 failed, 857 passed, 61 skipped in 142.51 seconds ==============
359
360 real 2m23.673s
361 user 2m2.345s
362 sys 0m1.957s
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.