I am developing an application handling CTRL-C. I am producing a signal handler to shut-down gracefully threads and other resources.
I want to test CTRL-C in different scenarios where my application might be. I know how to setup those for the process under test, but I need a way (in the code of the running test suite) to check whether that condition is reached or not to call exactly CTRL-C.
I work in Linux and I want to run my tests automatically with the help of CPPUNIT
. In each of my CTRL-C tests I start the process and then I send CTRL-C using kill
function having the PID of the process.
I am using shared memory; once the tested application reaches a condition of my interest or a point when I would like to send CTRL-C, I write a tag or a state into the shared memory. Aat the same time the test suite code running in a different process is continuosly polling the shared memory and once it reads the desired state it send CTRL-C/kill.
Do you think is a good approach or it is usually done in better/effective ways?
Kind Regards
AFG