/usr/lib/python2.7/dist-packages/tables/tests/test_all.py is in python-tables 3.4.2-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | # -*- coding: utf-8 -*-
"""Run all test cases."""
from __future__ import print_function
from __future__ import absolute_import
import sys
import numpy
import tables
from tables.req_versions import min_hdf5_version, min_numpy_version
from tables.tests import common
from tables.tests.common import unittest
from tables.tests.common import print_heavy, print_versions
def get_tuple_version(hexversion):
"""Get a tuple from a compact version in hex."""
h = hexversion
return(h & 0xff0000) >> 16, (h & 0xff00) >> 8, h & 0xff
def suite():
test_modules = [
'tables.tests.test_attributes',
'tables.tests.test_basics',
'tables.tests.test_create',
'tables.tests.test_backcompat',
'tables.tests.test_types',
'tables.tests.test_lists',
'tables.tests.test_tables',
'tables.tests.test_tablesMD',
'tables.tests.test_array',
'tables.tests.test_earray',
'tables.tests.test_carray',
'tables.tests.test_vlarray',
'tables.tests.test_tree',
'tables.tests.test_timetype',
'tables.tests.test_do_undo',
'tables.tests.test_enum',
'tables.tests.test_nestedtypes',
'tables.tests.test_hdf5compat',
'tables.tests.test_numpy',
'tables.tests.test_queries',
'tables.tests.test_expression',
'tables.tests.test_links',
'tables.tests.test_indexes',
'tables.tests.test_indexvalues',
'tables.tests.test_index_backcompat',
'tables.tests.test_aux',
'tables.tests.test_utils',
# Sub-packages
'tables.nodes.tests.test_filenode',
]
# print('-=' * 38)
# The test for garbage must be run *in the last place*.
# Else, it is not as useful.
test_modules.append('tables.tests.test_garbage')
alltests = unittest.TestSuite()
if common.show_memory:
# Add a memory report at the beginning
alltests.addTest(unittest.makeSuite(common.ShowMemTime))
for name in test_modules:
# Unexpectedly, the following code doesn't seem to work anymore
# in python 3
# exec('from %s import suite as test_suite' % name)
__import__(name)
test_suite = sys.modules[name].suite
alltests.addTest(test_suite())
if common.show_memory:
# Add a memory report after each test module
alltests.addTest(unittest.makeSuite(common.ShowMemTime))
return alltests
def test(verbose=False, heavy=False):
"""Run all the tests in the test suite.
If *verbose* is set, the test suite will emit messages with full
verbosity (not recommended unless you are looking into a certain
problem).
If *heavy* is set, the test suite will be run in *heavy* mode (you
should be careful with this because it can take a lot of time and
resources from your computer).
Return 0 (os.EX_OK) if all tests pass, 1 in case of failure
"""
print_versions()
print_heavy(heavy)
# What a context this is!
#oldverbose, common.verbose = common.verbose, verbose
oldheavy, common.heavy = common.heavy, heavy
try:
result = unittest.TextTestRunner(verbosity=1+int(verbose)).run(suite())
if result.wasSuccessful():
return 0
else:
return 1
finally:
#common.verbose = oldverbose
common.heavy = oldheavy # there are pretty young heavies, too ;)
if __name__ == '__main__':
common.parse_argv(sys.argv)
hdf5_version = get_tuple_version(tables.which_lib_version("hdf5")[0])
hdf5_version_str = "%s.%s.%s" % hdf5_version
if hdf5_version_str < min_hdf5_version:
print("*Warning*: HDF5 version is lower than recommended: %s < %s" %
(hdf5_version, min_hdf5_version))
if numpy.__version__ < min_numpy_version:
print("*Warning*: NumPy version is lower than recommended: %s < %s" %
(numpy.__version__, min_numpy_version))
# Handle some global flags (i.e. only useful for test_all.py)
only_versions = 0
args = sys.argv[:]
for arg in args:
# Remove 'show-versions' for PyTables 2.3 or higher
if arg in ['--print-versions', '--show-versions']:
only_versions = True
sys.argv.remove(arg)
elif arg == '--show-memory':
common.show_memory = True
sys.argv.remove(arg)
print_versions()
if not only_versions:
print_heavy(common.heavy)
unittest.main(defaultTest='tables.tests.suite')
|