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.
  • [get | view] (2011-12-15 15:13:12, 10.0 KB) [[attachment:py.test-cpython2.7.txt]]
  • [get | view] (2011-12-15 15:13:31, 32.3 KB) [[attachment:py.test-pypy1.6.txt]]
  • [get | view] (2011-12-15 15:13:53, 16.8 KB) [[attachment:py.test-pypy1.7.txt]]
  • [get | view] (2011-12-17 20:13:00, 9.0 KB) [[attachment:requests_per_second.png]]
  • [get | view] (2011-12-17 20:13:34, 43.5 KB) [[attachment:time_per_request.png]]
  • [get | view] (2011-12-17 20:12:27, 6.5 KB) [[attachment:unittest_time.png]]
 All files | Selected Files: delete move to page copy to page

You are not allowed to attach a file to this page.