Inelegant, a directory of weird helpers for tests.
- “Inelegant” is a set of not very elegant tools to help testing. So far there
are four packages:
inelegant.net: the most important tools are the waiter functions: inelegant.net.wait_server_down() will block until a port in a host is not accepting connections anymore, and inelegant.net.wait_server_up() will block until a port in the host will be ready for receiving data. There is also inelegant.net.Server, that sets up a very dumb SocketServer.TCPServer subclass for testing.
inelegant.finder: contains the inelegant.finder.TestFinder class. It is a unittest.TestSuite subclass that makes the task of finding test cases and doctests way less annoying.
inelegant.module: with inelegant.module.create_module(), one can create fully importable Python modules. inelegant.module.installed_module() will create and remove the importable module.
inelegant.process: home of inelegant.process.Process, a nice multiprocessing.Process subclass that makes the process of starting, stopping and communicating with a function in another process easier enough.
For more info, check the project page.