Rev 4940: Doc updates for permute_for_extension in

John Arbash Meinel john at
Wed Dec 23 02:28:41 GMT 2009


revno: 4940
revision-id: john at
parent: john at
committer: John Arbash Meinel <john at>
branch nick: 2.1.0rc1-permute-for-extension
timestamp: Tue 2009-12-22 20:28:24 -0600
  Doc updates for permute_for_extension
-------------- next part --------------
=== modified file 'doc/developers/testing.txt'
--- a/doc/developers/testing.txt	2009-12-09 15:45:37 +0000
+++ b/doc/developers/testing.txt	2009-12-23 02:28:24 +0000
@@ -173,15 +173,21 @@
 Per-implementation tests are tests that are defined once and then run
 against multiple implementations of an interface.  For example,
-```` defines tests that all Transport
-implementations (local filesystem, HTTP, and so on) must pass.
-They are found in ``bzrlib/tests/*_implementations/test_*.py``,
-``bzrlib/tests/per_*/*.py``, and
+```` defines tests that all Transport implementations
+(local filesystem, HTTP, and so on) must pass. They are found in
+``bzrlib/tests/per_*/*.py``, and ``bzrlib/tests/per_*.py``.
 These are really a sub-category of unit tests, but an important one.
+Along the same lines are tests for extension modules. We generally have
+both a pure-python and a compiled implementation for each module. As such,
+we want to run the same tests against both implementations. These can
+generally be found in ``bzrlib/tests/*__*.py`` since extension modules are
+usually prefixed with an underscore. Since there are only two
+implementations, we have a helper function
+``bzrlib.tests.permute_for_extension``, which can simplify the
+``load_tests`` implementation.

More information about the bazaar-commits mailing list