diff options
author | Thomas Miedema <thomasmiedema@gmail.com> | 2016-04-24 16:24:25 +0200 |
---|---|---|
committer | Thomas Miedema <thomasmiedema@gmail.com> | 2016-05-17 18:06:05 +0200 |
commit | 1a9ae4b39c057d2a21192f6be033c8545702f345 (patch) | |
tree | c472b82772f5e14a07184de617c2a38e1ff2f203 | |
parent | 3f3dc23ea64573a12e2f4bfdaaa3aa536ad3188d (diff) | |
download | haskell-1a9ae4b39c057d2a21192f6be033c8545702f345.tar.gz |
Testsuite: delete old cleanup code (#11980)
-rw-r--r-- | testsuite/Makefile | 3 | ||||
-rw-r--r-- | testsuite/config/ghc | 1 | ||||
-rw-r--r-- | testsuite/driver/testlib.py | 159 | ||||
-rw-r--r-- | testsuite/mk/test.mk | 6 |
4 files changed, 13 insertions, 156 deletions
diff --git a/testsuite/Makefile b/testsuite/Makefile index 661769b891..b366dc3144 100644 --- a/testsuite/Makefile +++ b/testsuite/Makefile @@ -48,6 +48,3 @@ clean distclean maintainer-clean: $(RM) -f mk/ghcconfig*.mk $(RM) -f mk/ghc-config mk/ghc-config.exe $(RM) -f driver/*.pyc - @echo - @echo "NOTICE: To clean up test files, try running 'make CLEANUP=1 CLEAN_ONLY=YES' in the testsuite directory" - @echo diff --git a/testsuite/config/ghc b/testsuite/config/ghc index 595415ae7b..82367d9238 100644 --- a/testsuite/config/ghc +++ b/testsuite/config/ghc @@ -82,7 +82,6 @@ if (ghc_with_llvm == 1): config.in_tree_compiler = in_tree_compiler config.cleanup = cleanup -config.clean_only = clean_only config.way_flags = lambda name : { 'normal' : [], diff --git a/testsuite/driver/testlib.py b/testsuite/driver/testlib.py index f2e8a3d7d1..b5761606ec 100644 --- a/testsuite/driver/testlib.py +++ b/testsuite/driver/testlib.py @@ -270,11 +270,8 @@ def _extra_hc_opts( name, opts, v ): # ----- def extra_clean( files ): - assert not isinstance(files, str), files - return lambda name, opts, v=files: _extra_clean(name, opts, v); - -def _extra_clean( name, opts, v ): - opts.clean_files = v + # TODO. Remove all calls to extra_clean. + return lambda _name, _opts: None def extra_files(files): return lambda name, opts: _extra_files(name, opts, files) @@ -425,10 +422,8 @@ def _pre_cmd( name, opts, cmd ): # ---- def clean_cmd( cmd ): - return lambda name, opts, c=cmd: _clean_cmd(name, opts, cmd) - -def _clean_cmd( name, opts, cmd ): - opts.clean_cmd = cmd + # TODO. Remove all calls to clean_cmd. + return lambda _name, _opts: None # ---- @@ -732,60 +727,18 @@ def test_common_work (name, opts, func, args): else: files.add(filename) - if not config.clean_only: - # Run the required tests... - for way in do_ways: - if stopping(): - break - do_test(name, way, func, args, files) + # Run the required tests... + for way in do_ways: + if stopping(): + break + do_test(name, way, func, args, files) - for way in all_ways: - if way not in do_ways: - skiptest (name,way) + for way in all_ways: + if way not in do_ways: + skiptest (name,way) - if config.cleanup and (config.clean_only or do_ways): + if config.cleanup and do_ways: cleanup() - elif False: # TODO. Delete this code. - pretest_cleanup(name) - clean([name + suff for suff in [ - '', '.exe', '.exe.manifest', '.genscript', - '.stderr.normalised', '.stdout.normalised', - '.run.stderr.normalised', '.run.stdout.normalised', - '.comp.stderr.normalised', '.comp.stdout.normalised', - '.interp.stderr.normalised', '.interp.stdout.normalised', - '.stats', '.comp.stats', - '.hi', '.o', '.prof', '.exe.prof', '.hc', - '_stub.h', '_stub.c', '_stub.o', - '.hp', '.exe.hp', '.ps', '.aux', '.hcr', '.eventlog']]) - - if func == multi_compile or func == multi_compile_fail: - extra_mods = args[1] - clean([replace_suffix(fx[0],'o') for fx in extra_mods]) - clean([replace_suffix(fx[0], 'hi') for fx in extra_mods]) - - - clean(getTestOpts().clean_files) - - if getTestOpts().outputdir != None: - odir = in_testdir(getTestOpts().outputdir) - try: - shutil.rmtree(odir) - except: - pass - - try: - shutil.rmtree(in_testdir('.hpc.' + name)) - except: - pass - - try: - cleanCmd = getTestOpts().clean_cmd - if cleanCmd != None: - result = runCmdFor(name, 'cd ' + getTestOpts().testdir + ' && ' + cleanCmd) - if result != 0: - framework_fail(name, 'cleaning', 'clean-command failed: ' + str(result)) - except: - framework_fail(name, 'cleaning', 'clean-command exception') package_conf_cache_file_end_timestamp = get_package_cache_timestamp(); @@ -805,35 +758,6 @@ def test_common_work (name, opts, func, args): except Exception as e: framework_fail(name, 'runTest', 'Unhandled exception: ' + str(e)) -def clean(strs): - return # TODO. Delete this function. - for str in strs: - if (str.endswith('.package.conf') or - str.startswith('package.conf.') and not str.endswith('/*')): - # Package confs are directories now. - str += '/*' - - for name in glob.glob(in_testdir(str)): - clean_full_path(name) - -def clean_full_path(name): - try: - # Remove files... - os.remove(name) - except OSError as e1: - try: - # ... and empty directories - os.rmdir(name) - except OSError as e2: - # We don't want to fail here, but we do want to know - # what went wrong, so print out the exceptions. - # ENOENT isn't a problem, though, as we clean files - # that don't necessarily exist. - if e1.errno != errno.ENOENT: - print(e1) - if e2.errno != errno.ENOENT: - print(e2) - def do_test(name, way, func, args, files): opts = getTestOpts() @@ -1115,7 +1039,6 @@ def multi_compile_fail( name, way, top_mod, extra_mods, extra_hc_opts ): def do_compile( name, way, should_fail, top_mod, extra_mods, extra_hc_opts, override_flags = None ): # print 'Compile only, extra args = ', extra_hc_opts - pretest_cleanup(name) result = extras_build( way, extra_mods, extra_hc_opts ) if badResult(result): @@ -1149,7 +1072,6 @@ def do_compile( name, way, should_fail, top_mod, extra_mods, extra_hc_opts, over def compile_cmp_asm( name, way, extra_hc_opts ): print('Compile only, extra args = ', extra_hc_opts) - pretest_cleanup(name) result = simple_build( name + '.cmm', way, '-keep-s-files -O ' + extra_hc_opts, 0, '', 0, 0, 0) if badResult(result): @@ -1175,7 +1097,6 @@ def compile_cmp_asm( name, way, extra_hc_opts ): def compile_and_run__( name, way, top_mod, extra_mods, extra_hc_opts ): # print 'Compile and run, extra args = ', extra_hc_opts - pretest_cleanup(name) result = extras_build( way, extra_mods, extra_hc_opts ) if badResult(result): @@ -1284,22 +1205,14 @@ def extras_build( way, extra_mods, extra_hc_opts ): def simple_build( name, way, extra_hc_opts, should_fail, top_mod, link, addsuf, noforce, override_flags = None ): opts = getTestOpts() errname = add_suffix(name, 'comp.stderr') - rm_no_fail( qualify(errname, '') ) if top_mod != '': srcname = top_mod - rm_no_fail( qualify(name, '') ) base, suf = os.path.splitext(top_mod) - rm_no_fail( qualify(base, '') ) - rm_no_fail( qualify(base, 'exe') ) elif addsuf: srcname = add_hs_lhs_suffix(name) - rm_no_fail( qualify(name, '') ) else: srcname = name - rm_no_fail( qualify(name, 'o') ) - - rm_no_fail( qualify(replace_suffix(srcname, "o"), '') ) to_do = '' if top_mod != '': @@ -1384,12 +1297,6 @@ def simple_run(name, way, prog, extra_run_opts): run_stdout = add_suffix(name,'run.stdout') run_stderr = add_suffix(name,'run.stderr') - rm_no_fail(qualify(name,'run.stdout')) - rm_no_fail(qualify(name,'run.stderr')) - rm_no_fail(qualify(name, 'hp')) - rm_no_fail(qualify(name,'ps')) - rm_no_fail(qualify(name, 'prof')) - my_rts_flags = rts_flags(way) stats_file = name + '.stats' @@ -1473,9 +1380,6 @@ def interpreter_run( name, way, extra_hc_opts, compile_only, top_mod ): outname = add_suffix(name, 'interp.stdout') errname = add_suffix(name, 'interp.stderr') - rm_no_fail(outname) - rm_no_fail(errname) - rm_no_fail(name) if (top_mod == ''): srcname = add_hs_lhs_suffix(name) @@ -1484,7 +1388,6 @@ def interpreter_run( name, way, extra_hc_opts, compile_only, top_mod ): scriptname = add_suffix(name, 'genscript') qscriptname = in_testdir(scriptname) - rm_no_fail(qscriptname) delimiter = '===== program output begins here\n' @@ -1998,7 +1901,6 @@ def runCmdFor( name, cmd, timeout_multiplier=1.0 ): "-e", "creat,open,chdir,clone,vfork", strip_quotes(config.timeout_prog), str(timeout), cmd]) addTestFilesWritten(name, fn) - rm_no_fail(fn) else: r = rawSystemWithTimeout([config.timeout_prog, str(timeout), cmd]) else: @@ -2222,13 +2124,6 @@ if config.have_profiling: else: gsNotWorking(); -def rm_no_fail( file ): - return # TODO. Delete this function. - try: - os.remove( file ) - finally: - return - def add_suffix( name, suffix ): if suffix == '': return name @@ -2256,9 +2151,6 @@ def replace_suffix( name, suffix ): def in_testdir(name, suffix=''): return os.path.join(getTestOpts().testdir, add_suffix(name, suffix)) -def qualify( name, suff ): - return in_testdir(add_suffix(name, suff)) - def in_srcdir(name, suffix=''): return os.path.join(getTestOpts().srcdir, add_suffix(name, suffix)) @@ -2285,31 +2177,6 @@ def find_expected_file(name, suff): return (0, basename) -# Clean up prior to the test, so that we can't spuriously conclude -# that it passed on the basis of old run outputs. -def pretest_cleanup(name): - return # TODO. Delete this function. - if getTestOpts().outputdir != None: - odir = in_testdir(getTestOpts().outputdir) - try: - shutil.rmtree(odir) - except: - pass - os.mkdir(odir) - - rm_no_fail(qualify(name,'interp.stderr')) - rm_no_fail(qualify(name,'interp.stdout')) - rm_no_fail(qualify(name,'comp.stderr')) - rm_no_fail(qualify(name,'comp.stdout')) - rm_no_fail(qualify(name,'run.stderr')) - rm_no_fail(qualify(name,'run.stdout')) - rm_no_fail(qualify(name,'tix')) - rm_no_fail(qualify(name,'exe.tix')) - # simple_build zaps the following: - # rm_nofail(qualify("o")) - # rm_nofail(qualify("")) - # not interested in the return code - def cleanup(): shutil.rmtree(getTestOpts().testdir, ignore_errors=True) diff --git a/testsuite/mk/test.mk b/testsuite/mk/test.mk index 8198efbc8c..ccaf0f8048 100644 --- a/testsuite/mk/test.mk +++ b/testsuite/mk/test.mk @@ -197,12 +197,6 @@ else RUNTEST_OPTS += -e cleanup=True endif -ifneq "$(CLEAN_ONLY)" "" -RUNTEST_OPTS += -e clean_only=True -else -RUNTEST_OPTS += -e clean_only=False -endif - ifneq "$(CHECK_FILES_WRITTEN)" "" RUNTEST_OPTS += --check-files-written endif |