mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-22 18:22:40 +00:00
tests: add test for including the ImportError message and traceback entry in the summary of errors from importing dependencies. refs #1389
This commit is contained in:
parent
449b7ad8c7
commit
a09d7300e0
25
src/allmydata/test/test_package_initialization.py
Normal file
25
src/allmydata/test/test_package_initialization.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
from twisted.trial import unittest
|
||||||
|
|
||||||
|
import allmydata
|
||||||
|
import mock
|
||||||
|
|
||||||
|
real_import_func = __import__
|
||||||
|
|
||||||
|
class T(unittest.TestCase):
|
||||||
|
@mock.patch('__builtin__.__import__')
|
||||||
|
def test_report_import_error(self, mockimport):
|
||||||
|
def raiseIE_from_this_particular_func(name, *args):
|
||||||
|
if name == "foolscap":
|
||||||
|
marker = "wheeeyo"
|
||||||
|
raise ImportError(marker + " foolscap cant be imported")
|
||||||
|
else:
|
||||||
|
return real_import_func(name, *args)
|
||||||
|
|
||||||
|
mockimport.side_effect = raiseIE_from_this_particular_func
|
||||||
|
|
||||||
|
vers_and_locs = allmydata.get_package_versions_and_locations()
|
||||||
|
for (pkgname, stuff) in vers_and_locs:
|
||||||
|
if pkgname == 'foolscap':
|
||||||
|
self.failUnless('wheeeyo' in str(stuff[2]), stuff)
|
||||||
|
self.failUnless('raiseIE_from_this_particular_func' in str(stuff[2]), stuff)
|
Loading…
x
Reference in New Issue
Block a user