| package com.mirantis.mcp-qa | 
 |  | 
 | /** | 
 |  * Run mcp-qa test by specified group | 
 |  * @param testGroup defines what tests to run, options are '-m test_mark', '-k test_expression' | 
 |  * @param jobSetParameters is additional params needed to run mcp-qa test | 
 |  */ | 
 |  | 
 | def runTest(testGroup, jobSetParameters) { | 
 |     def testArgs = [ '-s', '-ra' ] | 
 |     testArgs.add(testGroup) | 
 |     jobSetParameters.add("TEST_ARGS=${testArgs.join(' ')}") | 
 |     echo("The current tags, args, which were set by job: ${jobSetParameters.join(' ')}") | 
 |     withEnv(jobSetParameters) { | 
 |         sh '''\ | 
 |             . ${VENV_PATH}/bin/activate | 
 |             exit_code=0 | 
 |             export IMAGE_PATH=$(readlink -f "${IMAGE_PATH}") | 
 |             if ! py.test ${TEST_ARGS}; then | 
 |             exit_code=1 | 
 |             fi | 
 |             # erase environment if test passed and KEEP_AFTER isn't set to 'yes' or 'true' | 
 |             if [ ${exit_code} -eq 0 ]; then | 
 |             if ! [[ "${KEEP_AFTER}" == "yes" || "${KEEP_AFTER}" == "true" ]]; then | 
 |             dos.py erase "${ENV_NAME}" || true | 
 |             fi | 
 |             fi | 
 |             if [ ${exit_code} -gt 0 ]; then | 
 |             echo "Tests failed!" | 
 |             exit 1 | 
 |             fi | 
 |             '''.stripIndent() | 
 |     } | 
 | } |