Rev 3218: Import cleanup and various fixes revealed by running each test in in file:///v/home/vila/src/bzr/experimental/selftest/

Vincent Ladeuil v.ladeuil+lp at free.fr
Fri Feb 15 17:44:24 GMT 2008


At file:///v/home/vila/src/bzr/experimental/selftest/

------------------------------------------------------------
revno: 3218
revision-id:v.ladeuil+lp at free.fr-20080215174418-yuz71exbzem97ev9
parent: v.ladeuil+lp at free.fr-20080215135055-5gk3fpdyoytnbfj8
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: selftest
timestamp: Fri 2008-02-15 18:44:18 +0100
message:
  Import cleanup and various fixes revealed by running each test in
  isolation.
  
  * bzrlib/tests/__init__.py: 
  Remove imports rendered useless and fix some more.
  
  * bzrlib/doc/api/__init__.py:
  (load_tests.make_new_test_id): Add '.DocFileTest' in the test id
  or selftest --load-list get confused and fails to properly
  recognize the module name.
  
  * bzrlib/tests/test_lazy_import.py:
  (TestScopeReplacer.test_setattr_replaces): <cough> Fix
  AttributeError error.
  
  * bzrlib/tests/interrepository_implementations/__init__.py:
  (InterRepositoryTestProviderAdapter.formats_to_scenarios):
  Provides unique ids for tests to help defect localization.
  
  * bzrlib/tests/interrepository_implementations/test_interrepository.py: 
  Add missing bzrlib.gpg import.
modified:
  bzrlib/doc/api/__init__.py     __init__.py-20051224020744-7b87d590843855bc
  bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
  bzrlib/tests/interrepository_implementations/__init__.py __init__.py-20060220054744-baf49a1f88f17b1a
  bzrlib/tests/interrepository_implementations/test_interrepository.py test_interrepository.py-20060220061411-1ec13fa99e5e3eee
  bzrlib/tests/test_lazy_import.py test_lazy_import.py-20060910203832-f77c54gf3n232za0-2
-------------- next part --------------
=== modified file 'bzrlib/doc/api/__init__.py'
--- a/bzrlib/doc/api/__init__.py	2008-02-14 16:09:05 +0000
+++ b/bzrlib/doc/api/__init__.py	2008-02-15 17:44:18 +0000
@@ -44,7 +44,7 @@
     # want the module to appears there.
     for t in tests.iter_suite_tests(suite):
         def make_new_test_id():
-            new_id = '%s(%s)' % ( __name__, t)
+            new_id = '%s.DocFileTest(%s)' % ( __name__, t)
             return lambda: new_id
         t.id = make_new_test_id()
     return suite

=== modified file 'bzrlib/tests/__init__.py'
--- a/bzrlib/tests/__init__.py	2008-02-15 13:50:55 +0000
+++ b/bzrlib/tests/__init__.py	2008-02-15 17:44:18 +0000
@@ -49,33 +49,28 @@
 
 from bzrlib import (
     bzrdir,
+    commands,
     debug,
     errors,
+    lockdir,
     memorytree,
     osutils,
     progress,
     ui,
     urlutils,
+    symbol_versioning,
     workingtree,
     )
-import bzrlib.branch
+# FIXME: The following should be imported as bzrlib.commands or it will
+# conflict with bzrlib.tests.commands, the correct fix may be to rename
+# bzrliv.tests.commands since there is already a FIXME pending in it.
 import bzrlib.commands
-import bzrlib.timestamp
-import bzrlib.export
-import bzrlib.inventory
-import bzrlib.iterablefile
-import bzrlib.lockdir
 try:
     import bzrlib.lsprof
 except ImportError:
     # lsprof not available
     pass
-from bzrlib.merge import merge_inner
-import bzrlib.merge3
 import bzrlib.plugin
-from bzrlib.revision import common_ancestor
-import bzrlib.store
-from bzrlib import symbol_versioning
 from bzrlib.symbol_versioning import (
     DEPRECATED_PARAMETER,
     deprecated_function,
@@ -1654,11 +1649,11 @@
 
         Tests that expect to provoke LockContention errors should call this.
         """
-        orig_timeout = bzrlib.lockdir._DEFAULT_TIMEOUT_SECONDS
+        orig_timeout = lockdir._DEFAULT_TIMEOUT_SECONDS
         def resetTimeout():
-            bzrlib.lockdir._DEFAULT_TIMEOUT_SECONDS = orig_timeout
+            lockdir._DEFAULT_TIMEOUT_SECONDS = orig_timeout
         self.addCleanup(resetTimeout)
-        bzrlib.lockdir._DEFAULT_TIMEOUT_SECONDS = 0
+        lockdir._DEFAULT_TIMEOUT_SECONDS = 0
 
     def make_utf8_encoded_stringio(self, encoding_type=None):
         """Return a StringIOWrapper instance, that will encode Unicode
@@ -2754,8 +2749,7 @@
         loader = TestUtil.TestLoader()
     else:
         id_filter = TestIdList(keep_only)
-        exclude_module = lambda (name): not id_filter.refers_to(name)
-        loader = TestUtil.FilteredByModuleTestLoader(exclude_module)
+        loader = TestUtil.FilteredByModuleTestLoader(id_filter.refers_to)
     suite = loader.suiteClass()
 
     # modules building their suite with loadTestsFromModuleNames
@@ -2816,9 +2810,9 @@
         # Do some checks
         not_found, duplicates = suite_matches_id_list(suite, keep_only)
         for id in not_found:
-            bzrlib.trace.warning('%s not found in the test suite', id)
+            bzrlib.trace.warning('"%s" not found in the test suite', id)
         for id in duplicates:
-            bzrlib.trace.warning('%s is used as an id by several tests', id)
+            bzrlib.trace.warning('"%s" is used as an id by several tests', id)
 
     return suite
 

=== modified file 'bzrlib/tests/interrepository_implementations/__init__.py'
--- a/bzrlib/tests/interrepository_implementations/__init__.py	2008-02-14 15:48:39 +0000
+++ b/bzrlib/tests/interrepository_implementations/__init__.py	2008-02-15 17:44:18 +0000
@@ -61,7 +61,10 @@
         """
         result = []
         for interrepo_class, repository_format, repository_format_to in formats:
-            scenario = (interrepo_class.__name__,
+            id = '%s,%s,%s' % (interrepo_class.__name__,
+                                repository_format.__class__.__name__,
+                                repository_format_to.__class__.__name__)
+            scenario = (id,
                 {"transport_server":self._transport_server,
                  "transport_readonly_server":self._transport_readonly_server,
                  "repository_format":repository_format,

=== modified file 'bzrlib/tests/interrepository_implementations/test_interrepository.py'
--- a/bzrlib/tests/interrepository_implementations/test_interrepository.py	2008-01-17 03:14:20 +0000
+++ b/bzrlib/tests/interrepository_implementations/test_interrepository.py	2008-02-15 17:44:18 +0000
@@ -28,6 +28,7 @@
                            UninitializableFormat,
                            NotBranchError,
                            )
+import bzrlib.gpg
 from bzrlib.inventory import Inventory
 import bzrlib.repofmt.weaverepo as weaverepo
 import bzrlib.repository as repository

=== modified file 'bzrlib/tests/test_lazy_import.py'
--- a/bzrlib/tests/test_lazy_import.py	2007-11-09 02:24:44 +0000
+++ b/bzrlib/tests/test_lazy_import.py	2008-02-15 17:44:18 +0000
@@ -156,6 +156,8 @@
         An object should appear in globals() by constructing a ScopeReplacer,
         and it will be replaced with the real object upon the first request.
         """
+        actions = []
+        TestClass.use_actions(actions)
         def factory(replacer, scope, name):
             return TestClass()
         try:



More information about the bazaar-commits mailing list