mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-13 20:12:26 +00:00
44 lines
1.6 KiB
Python
Executable File
44 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
import common
|
|
import lkmc.import_path
|
|
from shell_helpers import LF
|
|
|
|
class Main(common.TestCliFunction):
|
|
def __init__(self):
|
|
super().__init__(
|
|
description='''\
|
|
https://cirosantilli.com/linux-kernel-module-cheat#automated-tests
|
|
'''
|
|
)
|
|
self.add_argument(
|
|
'--size',
|
|
default=1,
|
|
type=int,
|
|
help='''\
|
|
Size of the tests to run. Scale:
|
|
|
|
* 1: a few seconds and important
|
|
* 2: < 5 minutes and important or a few seconds and not too important
|
|
* 3: all
|
|
'''
|
|
)
|
|
|
|
def timed_main(self):
|
|
run_args = self.get_common_args()
|
|
test_boot_args = run_args.copy()
|
|
test_boot_args['size'] = self.env['size']
|
|
self.run_test(lkmc.import_path.import_path_main('test-boot'), test_boot_args, 'test-boot')
|
|
self.run_test(lkmc.import_path.import_path_main('test-userland-full-system'), run_args, 'test-userland')
|
|
self.run_test(lkmc.import_path.import_path_main('test-executables'), {**run_args, **{'mode': 'baremetal'}}, 'test-executables-baremetal')
|
|
self.run_test(lkmc.import_path.import_path_main('test-executables'), run_args, 'test-executables-userland')
|
|
self.run_test(lkmc.import_path.import_path_main('test-gdb'), run_args, 'test-gdb')
|
|
if self.env['emulator'] == 'gem5':
|
|
gem5_unit_test_args = run_args.copy()
|
|
gem5_unit_test_args['unit_tests'] = True
|
|
self.run_test(lkmc.import_path.import_path_main('build-gem5'), gem5_unit_test_args, 'gem5-unit-tests')
|
|
|
|
if __name__ == '__main__':
|
|
Main().cli()
|
|
|