diff --git a/importhook/meta_paths.py b/importhook/meta_paths.py index 484dc4c..102d093 100644 --- a/importhook/meta_paths.py +++ b/importhook/meta_paths.py @@ -12,4 +12,4 @@ class HookMetaPaths(list): super(HookMetaPaths, self).__init__([hook_finder(f) for f in finders]) def __setitem__(self, key, val): - super(HookMetaPaths, self).__setitem__(hook_finder(val)) + super(HookMetaPaths, self).__setitem__(key, hook_finder(val)) diff --git a/importhook/tests/test_meta_paths.py b/importhook/tests/test_meta_paths.py new file mode 100644 index 0000000..fa8f16d --- /dev/null +++ b/importhook/tests/test_meta_paths.py @@ -0,0 +1,15 @@ +from importhook import HookMetaPaths + + +class DummyFinder: + pass + + +def test_hook_meta_paths_setitem(): + finder1 = DummyFinder() + finder2 = DummyFinder() + paths = HookMetaPaths([finder1, finder2]) + finder3 = DummyFinder() + paths[0] = finder3 + assert paths == [finder3, finder2] + assert finder3.__hooked__ is True