This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.
msuraev at sysmocom.de msuraev at sysmocom.deFrom: Max <msuraev at sysmocom.de> This allows to specify additional files which shall be copied into temporary directory where tests are executed. --- osmopy/osmotestconfig.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/osmopy/osmotestconfig.py b/osmopy/osmotestconfig.py index b020d86..1e72d4b 100644 --- a/osmopy/osmotestconfig.py +++ b/osmopy/osmotestconfig.py @@ -18,20 +18,20 @@ import os import os.path import time import sys -import tempfile +import tempfile, shutil import osmopy.obscvty as obscvty import osmopy.osmoutil as osmoutil # Return true iff all the tests for the given config pass -def test_config(app_desc, config, tmpdir, verbose=True): +def test_config(app_desc, config, tmpdir, copy_files, verbose=True): try: err = 0 if test_config_atest(app_desc, config, verify_doc, verbose)[0] > 0: err += 1 - newconfig = copy_config(tmpdir, config) + newconfig = copy_config(tmpdir, config, copy_files) if test_config_atest(app_desc, newconfig, write_config, verbose) > 0: err += 1 @@ -73,7 +73,7 @@ def test_config_atest(app_desc, config, run_test, verbose=True): return ret -def copy_config(dirname, config): +def copy_config(dirname, config, copy_files): try: os.stat(dirname) except OSError: @@ -82,6 +82,9 @@ def copy_config(dirname, config): remove_tmpdir(dirname) os.mkdir(dirname) + for f in copy_files: + shutil.copy(f, dirname) + prefix = os.path.basename(config) tmpfile = tempfile.NamedTemporaryFile( dir=dirname, prefix=prefix, delete=False) @@ -155,9 +158,10 @@ def check_configs_tested(basedir, app_configs, ignore_configs): def test_all_apps(apps, app_configs, tmpdir="writtenconfig", verbose=True, - confpath=".", rmtmp=False, ignore_configs=[]): + confpath=".", rmtmp=False, ignore_configs=[], copy_files=[]): check_configs_tested("doc/examples/", app_configs, ignore_configs) errors = 0 + for app in apps: if not app_exists(app): print >> sys.stderr, "Skipping app %s (not found)" % app[1] @@ -166,7 +170,7 @@ def test_all_apps(apps, app_configs, tmpdir="writtenconfig", verbose=True, configs = app_configs[app[3]] for config in configs: config = os.path.join(confpath, config) - errors |= test_config(app, config, tmpdir, verbose) + errors |= test_config(app, config, tmpdir, copy_files, verbose) if rmtmp or not errors: remove_tmpdir(tmpdir) @@ -203,10 +207,12 @@ if __name__ == '__main__': apps = osmoappdesc.apps configs = osmoappdesc.app_configs ignores = getattr(osmoappdesc, 'ignore_configs', []) + copycat = getattr(osmoappdesc, 'copy_files', []) if args.e1nitb: configs['nitb'].extend(osmoappdesc.nitb_e1_configs) os.chdir(workdir) sys.exit(test_all_apps(apps, configs, ignore_configs=ignores, - confpath=confpath, verbose=args.verbose)) + confpath=confpath, copy_files=copycat, + verbose=args.verbose)) -- 2.8.0