tests: Add support for skipping tests, skip EIO tests if not enabled
authorAndreas Sandberg <Andreas.Sandberg@ARM.com>
Mon, 7 Jan 2013 18:05:37 +0000 (13:05 -0500)
committerAndreas Sandberg <Andreas.Sandberg@ARM.com>
Mon, 7 Jan 2013 18:05:37 +0000 (13:05 -0500)
commit9c5ef235cc595d0f51b0810786c2b512bef7c69f
treefa0b5e5d9e28267c001732210a548debe143e7ce
parent35bdee72cbbced98bb93f9e5310c4dbd014dd911
tests: Add support for skipping tests, skip EIO tests if not enabled

The EIO tests depend on the EIO support from the "encumbered"
repository, which means that they are not normally built with
gem5. This causes all EIO related tests to fail, which is both
annoying and confusing. This patch addresses this by adding support
for skipping tests if certain conditions (e.g., the presence of a
SimObject) can not be met. It introduces the following Python
functions that can be called from within a test case:

  * skip_test -- Skip a test and optionally print why the test was
                 skipped.

  * has_sim_object -- Test if a SimObject exists.

  * require_sim_object -- Test if a SimObject exists and skip, or
                          optionally fail, the test if not.

Additionally, this patch updates the EIO tests to check for the
presence of EioProcess.
tests/SConscript
tests/quick/se/20.eio-short/test.py
tests/quick/se/30.eio-mp/test.py
tests/run.py