Changeset 08e8851 for tests/test.py


Ignore:
Timestamp:
Sep 29, 2020, 1:51:01 PM (4 years ago)
Author:
Fangren Yu <f37yu@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
1526e86, 87b9332, 9dc3eb21
Parents:
2ff78aa (diff), d13dd6b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc into master

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/test.py

    r2ff78aa r08e8851  
    173173        test.prepare()
    174174
     175        # ----------
     176        # MAKE
     177        # ----------
    175178        # build, skipping to next test on error
    176179        with Timed() as comp_dur:
    177180                make_ret, _ = make( test.target(), output_file=subprocess.DEVNULL, error=out_file, error_file = err_file )
    178181
     182        # ----------
     183        # RUN
     184        # ----------
     185        # run everything in a temp directory to make sure core file are handled properly
    179186        run_dur = None
    180         # run everything in a temp directory to make sure core file are handled properly
    181187        with tempdir():
    182188                # if the make command succeeds continue otherwise skip to diff
     
    256262        make('clean', output_file=subprocess.DEVNULL, error=subprocess.DEVNULL)
    257263
    258         # since python prints stacks by default on a interrupt, redo the interrupt handling to be silent
    259         def worker_init():
    260                 def sig_int(signal_num, frame):
    261                         pass
    262 
    263                 signal.signal(signal.SIGINT, sig_int)
    264 
    265         # create the executor for our jobs and handle the signal properly
    266         pool = multiprocessing.Pool(jobs, worker_init)
     264        # create the executor for our jobs
     265        pool = multiprocessing.Pool(jobs)
    267266
    268267        failed = False
    269 
    270         def stop(x, y):
    271                 print("Tests interrupted by user", file=sys.stderr)
    272                 sys.exit(1)
    273         signal.signal(signal.SIGINT, stop)
    274268
    275269        # for each test to run
     
    360354                failed = 0
    361355
     356                # check if the expected files aren't empty
     357                if not options.regenerate_expected:
     358                        for t in tests:
     359                                if is_empty(t.expect()):
     360                                        print('WARNING: test "{}" has empty .expect file'.format(t.target()), file=sys.stderr)
     361
    362362                # for each build configurations, run the test
    363363                with Timed() as total_dur:
Note: See TracChangeset for help on using the changeset viewer.