Пример #1
0
 def test_remove_added(self):
     original = dict(sys.modules)
     assert self.key not in sys.modules
     snapshot = SysModulesSnapshot()
     sys.modules[self.key] = "something"
     assert self.key in sys.modules
     snapshot.restore()
     assert sys.modules == original
Пример #2
0
 def test_restore_reloaded(self, monkeypatch):
     assert self.key not in sys.modules
     monkeypatch.setitem(sys.modules, self.key, "something")
     assert self.key in sys.modules
     original = dict(sys.modules)
     snapshot = SysModulesSnapshot()
     sys.modules[self.key] = "something else"
     snapshot.restore()
     assert sys.modules == original
Пример #3
0
 def test_preserve_container(self, monkeypatch):
     original = dict(sys.modules)
     assert self.key not in original
     replacement = dict(sys.modules)
     replacement[self.key] = "life of brian"
     snapshot = SysModulesSnapshot()
     monkeypatch.setattr(sys, "modules", replacement)
     snapshot.restore()
     assert sys.modules is replacement
     assert sys.modules == original
Пример #4
0
 def test_add_removed(self, monkeypatch):
     assert self.key not in sys.modules
     monkeypatch.setitem(sys.modules, self.key, "something")
     assert self.key in sys.modules
     original = dict(sys.modules)
     snapshot = SysModulesSnapshot()
     del sys.modules[self.key]
     assert self.key not in sys.modules
     snapshot.restore()
     assert sys.modules == original
Пример #5
0
 def test_add_removed(self, monkeypatch):
     assert self.key not in sys.modules
     monkeypatch.setitem(sys.modules, self.key, "something")
     assert self.key in sys.modules
     original = dict(sys.modules)
     snapshot = SysModulesSnapshot()
     del sys.modules[self.key]
     assert self.key not in sys.modules
     snapshot.restore()
     assert sys.modules == original
Пример #6
0
 def test_preserve_container(self, monkeypatch) -> None:
     original = dict(sys.modules)
     assert self.key not in original
     replacement = dict(sys.modules)
     replacement[self.key] = "life of brian"  # type: ignore
     snapshot = SysModulesSnapshot()
     monkeypatch.setattr(sys, "modules", replacement)
     snapshot.restore()
     assert sys.modules is replacement
     assert sys.modules == original
Пример #7
0
 def test_preserve_container(self, monkeypatch):
     original = dict(sys.modules)
     assert self.key not in original
     replacement = dict(sys.modules)
     replacement[self.key] = 'life of brian'
     snapshot = SysModulesSnapshot()
     monkeypatch.setattr(sys, 'modules', replacement)
     snapshot.restore()
     assert sys.modules is replacement
     assert sys.modules == original
Пример #8
0
    def test_preserve_modules(self, monkeypatch) -> None:
        key = [self.key + str(i) for i in range(3)]
        assert not any(k in sys.modules for k in key)
        for i, k in enumerate(key):
            monkeypatch.setitem(sys.modules, k, "something" + str(i))
        original = dict(sys.modules)

        def preserve(name):
            return name in (key[0], key[1], "some-other-key")

        snapshot = SysModulesSnapshot(preserve=preserve)
        sys.modules[key[0]] = original[key[0]] = "something else0"  # type: ignore
        sys.modules[key[1]] = original[key[1]] = "something else1"  # type: ignore
        sys.modules[key[2]] = "something else2"  # type: ignore
        snapshot.restore()
        assert sys.modules == original
Пример #9
0
    def test_preserve_modules(self, monkeypatch):
        key = [self.key + str(i) for i in range(3)]
        assert not any(k in sys.modules for k in key)
        for i, k in enumerate(key):
            monkeypatch.setitem(sys.modules, k, "something" + str(i))
        original = dict(sys.modules)

        def preserve(name):
            return name in (key[0], key[1], "some-other-key")

        snapshot = SysModulesSnapshot(preserve=preserve)
        sys.modules[key[0]] = original[key[0]] = "something else0"
        sys.modules[key[1]] = original[key[1]] = "something else1"
        sys.modules[key[2]] = "something else2"
        snapshot.restore()
        assert sys.modules == original
Пример #10
0
        class SysModulesSnapshotSpy:
            instances = []  # type: List[SysModulesSnapshotSpy]

            def __init__(self, preserve=None) -> None:
                SysModulesSnapshotSpy.instances.append(self)
                self._spy_restore_count = 0
                self._spy_preserve = preserve
                self.__snapshot = SysModulesSnapshot(preserve=preserve)

            def restore(self):
                self._spy_restore_count += 1
                return self.__snapshot.restore()
Пример #11
0
        class SysModulesSnapshotSpy(object):
            instances = []

            def __init__(self, preserve=None):
                SysModulesSnapshotSpy.instances.append(self)
                self._spy_restore_count = 0
                self._spy_preserve = preserve
                self.__snapshot = SysModulesSnapshot(preserve=preserve)

            def restore(self):
                self._spy_restore_count += 1
                return self.__snapshot.restore()
Пример #12
0
 def __init__(self, preserve=None) -> None:
     SysModulesSnapshotSpy.instances.append(self)
     self._spy_restore_count = 0
     self._spy_preserve = preserve
     self.__snapshot = SysModulesSnapshot(preserve=preserve)
Пример #13
0
 def __init__(self, preserve=None):
     SysModulesSnapshotSpy.instances.append(self)
     self._spy_restore_count = 0
     self._spy_preserve = preserve
     self.__snapshot = SysModulesSnapshot(preserve=preserve)