Хук импорта, который печатает каждый раз, когда что-то делает импорт
У меня есть модуль Python и модульный тест для него. Когда я запускаю модульный тест, я получаю это:
flumotion
test
test_common_gstreamer ... [ERROR]
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/twisted/trial/runner.py", line 660, in loadByNames
things.append(self.findByName(name))
File "/usr/lib/python2.7/dist-packages/twisted/trial/runner.py", line 470, in findByName
return reflect.namedAny(name)
File "/usr/lib/python2.7/dist-packages/twisted/python/reflect.py", line 464, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/flumotion/flumotion/test/test_common_gstreamer.py", line 20, in <module>
from gi.repository import Gst
File "/usr/lib/python2.7/dist-packages/gi/__init__.py", line 23, in <module>
from ._gi import _API, Repository
exceptions.ImportError: could not import gobject (error was: ImportError('When using gi.repository you must not import static modules like "gobject". Please change all occurrences of "import gobject" to "from gi.repository import GObject".',))
flumotion.test.test_common_gstreamer
Я знаю, что ошибка не требует пояснений, но я не могу найти, где происходит "объект импорта", поэтому мне посоветовали создать ловушку импорта, которая будет печатать каждый раз, когда что-то делает импорт. Я не знаю, где и как реализовать хук, я только прочитал кое-что о хуках импорта здесь http://xion.org.pl/2012/05/06/hacking-python-imports/. Любая помощь приветствуется