### Navigation

- index
- next |
- previous |
- CMake »
- 3.0.2 Documentation »
- cmake-modules(7) »

# FindSquish

– Typical Use

This module can be used to find Squish. Currently Squish versions 3 and 4 are supported.

    SQUISH_FOUND                    If false, don't try to use Squish
    SQUISH_VERSION                  The full version of Squish found
    SQUISH_VERSION_MAJOR            The major version of Squish found
    SQUISH_VERSION_MINOR            The minor version of Squish found
    SQUISH_VERSION_PATCH            The patch version of Squish found

    SQUISH_INSTALL_DIR              The Squish installation directory (containing bin, lib, etc)
    SQUISH_SERVER_EXECUTABLE        The squishserver executable
    SQUISH_CLIENT_EXECUTABLE        The squishrunner executable

    SQUISH_INSTALL_DIR_FOUND        Was the install directory found?
    SQUISH_SERVER_EXECUTABLE_FOUND  Was the server executable found?
    SQUISH_CLIENT_EXECUTABLE_FOUND  Was the client executable found?

It provides the function squish_v4_add_test() for adding a squish test to cmake using Squish 4.x:

    squish_v4_add_test(cmakeTestName AUT targetName SUITE suiteName TEST squishTestName
                    [SETTINGSGROUP group] [PRE_COMMAND command] [POST_COMMAND command] )

The arguments have the following meaning:

    cmakeTestName: this will be used as the first argument for add_test()
    AUT targetName: the name of the cmake target which will be used as AUT, i.e. the
                    executable which will be tested.
    SUITE suiteName: this is either the full path to the squish suite, or just the
                     last directory of the suite, i.e. the suite name. In this case
                     the CMakeLists.txt which calls squish_add_test() must be located
                     in the parent directory of the suite directory.
    TEST squishTestName: the name of the squish test, i.e. the name of the subdirectory
                         of the test inside the suite directory.
    SETTINGSGROUP group: if specified, the given settings group will be used for executing the test.
                         If not specified, the groupname will be "CTest_<username>"
    PRE_COMMAND command:  if specified, the given command will be executed before starting the squish test.
    POST_COMMAND command: same as PRE_COMMAND, but after the squish test has been executed.

    enable_testing()
    find_package(Squish 4.0)
    if (SQUISH_FOUND)
       squish_v4_add_test(myTestName AUT myApp SUITE ${CMAKE_SOURCE_DIR}/tests/mySuite TEST someSquishTest SETTINGSGROUP myGroup )
    endif ()

For users of Squish version 3.x the macro squish_v3_add_test() is provided:

    squish_v3_add_test(testName applicationUnderTest testCase envVars testWrapper)
    Use this macro to add a test using Squish 3.x.

    enable_testing()
    find_package(Squish)
    if (SQUISH_FOUND)
      squish_v3_add_test(myTestName myApplication testCase envVars testWrapper)
    endif ()

macro SQUISH_ADD_TEST(testName applicationUnderTest testCase envVars testWrapper)

    This is deprecated. Use SQUISH_V3_ADD_TEST() if you are using Squish 3.x instead.

### Navigation

- index
- next |
- previous |
- CMake »
- 3.0.2 Documentation »
- cmake-modules(7) »