~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_lazy_import.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2010-01-26 10:49:57 UTC
  • mfrom: (4987.1.1 integration)
  • Revision ID: pqm@pqm.ubuntu.com-20100126104957-dmtqnc0pckuruyla
(vila,
        jam) Implement TestCase.overrideAttr to simplify tests setUp/cleanup

Show diffs side-by-side

added added

removed removed

Lines of Context:
452
452
        self.actions = []
453
453
        InstrumentedImportReplacer.use_actions(self.actions)
454
454
 
 
455
        sys.path.append(base_path)
 
456
        self.addCleanup(sys.path.remove, base_path)
 
457
 
455
458
        original_import = __import__
456
459
        def instrumented_import(mod, scope1, scope2, fromlist):
457
460
            self.actions.append(('import', mod, fromlist))
458
461
            return original_import(mod, scope1, scope2, fromlist)
459
 
 
460
462
        def cleanup():
461
 
            if base_path in sys.path:
462
 
                sys.path.remove(base_path)
463
463
            __builtins__['__import__'] = original_import
464
464
        self.addCleanup(cleanup)
465
 
        sys.path.append(base_path)
466
465
        __builtins__['__import__'] = instrumented_import
467
466
 
468
467
    def create_modules(self):