mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-22 02:16:42 +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