[Python-Dev] Location of tests for packages

Brett Cannon brett at python.org
Tue Jan 25 18:38:36 CET 2011

On Mon, Jan 24, 2011 at 17:19, Raymond Hettinger
<raymond.hettinger at gmail.com> wrote:
> On Jan 24, 2011, at 3:40 PM, Michael Foord wrote:
>> It isn't just unittest, it seems that all *test packages* are in their respective package and not Lib/test except for the json module where Raymond already moved the tests:
>>    distutils/tests
>>    email/test
>>    ctypes/test
>>    importlib/test
>>    lib2to3/tests
>>    sqlite3/test
>>    tkinter/test
>> So I'm a little confused as to why the focus on the *unittest* test suite.
> There's not a focus on unittest.  Importlib should also move under Lib/test
> and when email is ready, it too should fully join the organization of
> the overall project (Doc, Lib, Lib/test, Modules, Objects, Tools).

Just to clarify my position since importlib keeps getting brought up
as an example, I'm fine with a move but I won't be putting the work in
to do the move if there is actually consensus to make this a
stdlib-wide policy. And I am assuming that the directory will be moved
wholesale to Lib/test/importlib (with proper fixes for any relative
imports) along with verification that importlib.test.__main__
continues to work (naming it test.importlib_tests seems rather
redundant compared to test.importlib).

While I'm for consistency, obviously a trend was started by ctypes and
sqlite3 that the rest of us who created full packages followed up to
this point. If we move some modules and not others purely because some
distros choose not to ship e.g., ctypes and sqlite3, that will get
annoying w/o some very clear explanation/delineation as to why some
packages have a special rule to follow (I'm guessing "packages that
have external dependencies" would be it).

More information about the Python-Dev mailing list