0023586: The test execution process should correctly stop on user demand
authorabv <abv@opencascade.com>
Fri, 7 Dec 2012 12:12:01 +0000 (16:12 +0400)
committerabv <abv@opencascade.com>
Fri, 7 Dec 2012 12:12:01 +0000 (16:12 +0400)
commit8a262fa13d48f432224f367eabb710fa192c25e8
treec7129bce60faef7ca72149da08e19b9ac25795a0
parent3994ec417fbbd61d4da14218451b257561908bf0
0023586: The test execution process should correctly stop on user demand

Possibility to break DRAW commands by user break (Control-C) is implemented as follows:

- Treatment of Control-C (SIGINT signal) on UNIX in OSD::SetSignal() is made coherent with Windows implementation: instead of attempt to raise exception (simulated by longjump, does not work anyway), signal handler just sets a flag which can be later checked by OSD::ControlBreak()

- Call to OSD::ControlBreak() is added to common entry point for OCCT DRAW commands; this causes command interruption if Control-C has been pressed before its start.

- Command "dbreak" added allowing to check Control-Break status from Tcl script (raises Tcl exception if break was signaled)

- Command "dversion" added printing information on OCCT version, used build options, compiler, etc.

- Test system modified to properly handle and report user breaks and add version info in the summary log

Fix compiler error on Linux
src/Draw/Draw_BasicCommands.cxx
src/Draw/Draw_Interpretor.cxx
src/DrawResources/TestCommands.tcl
src/OSD/OSD_signal.cxx