1 """ Convenience module for running standard library tests with nose. The standard
2 tests are not especially homogeneous, but they mostly expose a test_main method that
3 does the work of selecting which tests to run based on what is supported by the
4 platform. On its own, Nose would run all possible tests and many would fail; therefore
5 we collect all of the test_main methods here in one module and Nose can run it.
7 Hopefully in the future the standard tests get rewritten to be more nosey.
9 Many of these tests make connections to external servers, and all.py tries to skip these
10 tests rather than failing them, so you can get some work done on a plane.
13 from eventlet import debug
14 debug.hub_prevent_multiple_readers(False)
18 from eventlet import hubs
20 hub_shortname = hub.__module__.split('.')[-1]
21 # don't restart the pyevent hub; it's not necessary
22 if hub_shortname != 'pyevent':
24 hubs.use_hub(hub_shortname)
27 def assimilate_patched(name):
29 modobj = __import__(name, globals(), locals(), ['test_main'])
32 print("Not importing %s, it doesn't exist in this installation/version of Python" % name)
35 method_name = name + "_test_main"
37 test_method = modobj.test_main
43 globals()[method_name] = test_main
44 test_main.__name__ = name + '.test_main'
45 except AttributeError:
46 print("No test_main for %s, assuming it tests on import" % name)
50 for m in all_modules.get_modules():