mediagoblin-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GMG-Devel] Mediagoblin self-test failures


From: Christopher Allan Webber
Subject: Re: [GMG-Devel] Mediagoblin self-test failures
Date: Fri, 22 Jan 2016 15:19:15 -0800

Mikhail T. writes:

> On 19.01.2016 20:19, Christopher Allan Webber wrote:
>> Hello Mikhail! And sorry for the delay in response! 
> Well, better late than never :)
>>> and am seeing the following self-test failures. Is the self-test suit
>>> supposed to run clean, or is it known to be broken in places?
>>>
>>>     http://aldan.algebra.com/~mi/tmp/mediagoblin-test-failures.txt
>> Hm, no most of those are not errors that I'm familiar with.  The
>> detached session one is the only one I know of having that problem.
> Most, but not all? Could you identify the known failures, so I don't
> struggle with them?

Sure, here are the three that fail on 0.8.1:

==================================== FAILURES 
====================================
______________________________ test_exif_extraction 
______________________________
Traceback (most recent call last):
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_exif.py", line 
374, in test_exif_extraction
    assert useful[key] == expected[key]
AssertionError: assert {'field_lengt...d 90 CW', ...} == {'field_length... 90 
CCW', ...}
  Omitting 5 identical items, use -v to show
  Differing items:
  {'printable': 'Rotated 90 CW'} != {'printable': 'Rotated 90 CCW'}
  Use -v to get the full diff
_______________ TestNotifications.test_comment_notification[True] 
________________
Traceback (most recent call last):
  File 
"/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_notifications.py", line 
119, in test_comment_notification
    assert mail.EMAIL_TEST_MBOX_INBOX == [
AssertionError: assert [{'from': 'no...xample.com']}] == [{'from': 
'not...xample.com']}]
  At index 0 diff: {u'to': [u'address@hidden'], u'message': 'Content-Type: 
text/plain; charset="utf-8"\nMIME-Version: 1.0\nContent-Transfer-Encoding: 
base64\nSubject: GNU MediaGoblin - chris commented on your post\nFrom: 
address@hidden\nTo: 
address@hidden\n\nSGkgb3RoZXJwZXJzb24sCmNocmlzIGNvbW1lbnRlZCBvbiB5b3VyIHBvc3QgKGh0dHA6Ly9sb2Nh\nbGhvc3QvdS9vdGhlcnBlcnNvbi9tL3NvbWUtdGl0bGUvYy8xLyNjb21tZW50KSBhdCBHTlUgTWVk\naWFHb2JsaW4KClRlc3QgY29tbWVudCAjNDIKCkdOVSBNZWRpYUdvYmxpbg==\n',
 u'from': 'address@hidden'} != {'to': [u'address@hidden'], 'message': 
'Content-Type: text/plain; charset="utf-8"\nMIME-Version: 
1.0\nContent-Transfer-Encoding: base64\nSubject: GNU MediaGoblin - chris 
commented on your post\nFrom: address@hidden\nTo: 
address@hidden\n\nSGkgb3RoZXJwZXJzb24sCmNocmlzIGNvbW1lbnRlZCBvbiB5b3VyIHBvc3QgKGh0dHA6Ly9sb2Nh\nbGhvc3Q6ODAvdS9vdGhlcnBlcnNvbi9tL3NvbWUtdGl0bGUvYy8xLyNjb21tZW50KSBhdCBHTlUg\nTWVkaWFHb2JsaW4KClRlc3QgY29tbWVudCAjNDIKCkdOVSBNZWRpYUdvYmxpbg==\n',
 'from': 'address@hidden'}
  Use -v to get the full diff
  Detailed information truncated (-7 more lines), use "-vv" to show
___________________________ TestSubmission.test_audio 
____________________________
Traceback (most recent call last):
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 377, in test_audio
    self.check_normal_upload('Audio', path)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 121, in check_normal_upload
    **self.upload_data(filename))
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 92, in do_post
    response.follow()
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/WebTest-1.4.3-py2.7.egg/webtest/app.py",
 line 159, in follow
    % self.status)
AssertionError: You can only follow redirect responses (not 200 OK)
=============== 3 failed, 149 passed, 3 skipped in 188.58 seconds 
================
 
On git master:

_______________________________________________________ 
TestSubmission.test_audio 
________________________________________________________
Traceback (most recent call last):
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 394, in test_audio
    self.check_normal_upload('Audio', path)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 128, in check_normal_upload
    **self.upload_data(filename))
  File "/home/cwebber/devel/mediagoblin/mediagoblin/tests/test_submission.py", 
line 91, in do_post
    response = self.test_app.post(url, data, **kwargs)
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/WebTest-2.0.20-py2.7.egg/webtest/app.py",
 line 371, in post
    content_type=content_type)
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/WebTest-2.0.20-py2.7.egg/webtest/app.py",
 line 736, in _gen_request
    expect_errors=expect_errors)
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/WebTest-2.0.20-py2.7.egg/webtest/app.py",
 line 606, in do_request
    res = req.get_response(app, catch_exc_info=True)
  File "build/bdist.linux-x86_64/egg/webob/request.py", line 1313, in send
    application, catch_exc_info=True)
  File "build/bdist.linux-x86_64/egg/webob/request.py", line 1281, in 
call_application
    app_iter = application(self.environ, start_response)
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/WebTest-2.0.20-py2.7.egg/webtest/lint.py",
 line 198, in lint_app
    iterator = application(environ, start_response_wrapper)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/app.py", line 342, in 
__call__
    return self.call_backend(environ, start_response)
  File 
"/home/cwebber/devel/mediagoblin/local/lib/python2.7/site-packages/Werkzeug-0.11.3-py2.7.egg/werkzeug/wsgi.py",
 line 599, in __call__
    return self.app(environ, start_response)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/app.py", line 276, in 
call_backend
    return self._finish_call_backend(request, environ, start_response)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/app.py", line 318, in 
_finish_call_backend
    response = controller(request)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/decorators.py", line 47, in 
wrapper
    return controller(request, *args, **kwargs)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/decorators.py", line 74, in 
new_controller_func
    return controller(request, *args, **kwargs)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/decorators.py", line 47, in 
wrapper
    return controller(request, *args, **kwargs)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/decorators.py", line 74, in 
new_controller_func
    return controller(request, *args, **kwargs)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/decorators.py", line 103, 
in wrapper
    return controller(request, *args, **kwargs)
  File "/home/cwebber/devel/mediagoblin/mediagoblin/submit/views.py", line 93, 
in submit_start
    user=request.user.username)
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/attributes.py", line 316, 
in __get__
    return self.impl.get(instance_state(instance), dict_)
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/attributes.py", line 611, 
in get
    value = callable_(state, passive)
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/state.py", line 442, in 
__call__
    self.manager.deferred_scalar_loader(self, toload)
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/loading.py", line 555, in 
load_scalar_attributes
    (state_str(state)))
DetachedInstanceError: Instance <LocalUser at 0x7fffe737dcd0> is not bound to a 
Session; attribute refresh operation cannot proceed

Hope that helps...

> At least some of the errors are due simply to missing test-images. For
> example, tests/test_exif/has-gps.jpg does not exist in the 0.8.1 tarball
> -- but is present in git. Similarly, tests/test_exif/good.jpg is missing
> -- I use tests/test_submission/good.jpg as substitute, perhaps, incorrectly.
>
> Obviously, the 0.8.1 was not verified to pass all of the self-tests
> bundled with the release. Is this something, that'll change with the
> next releases, or am I wasting time trying to make the port verify the
> newly-built package post-build?

0.8.1 had some broken tests, I think dependency related but I'm not
sure, but it should really only be the above.  Normally when we do a
release, require all tests passing.  Having an urgent security issue
changed that a bit.

>>> BTW, am I right, that 0.8.1 is the most current release? Thanks! Yours,
>> Yes, that's right!
>
> Any ETA for the next release? Any important functionality/security fixes
> I should be adding to the port before that? Thank you! Yours,
>
>     -mi

There are quite a few features and bug fixes, but I think nothing
urgent.  I'm not sure on release date, but I think mid-next-month
probably...

 - Chris


reply via email to

[Prev in Thread] Current Thread [Next in Thread]