
* Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Add files via upload * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh * Update setup_debian_2_install_docker.sh
22 lines
1.0 KiB
Ruby
22 lines
1.0 KiB
Ruby
class CppUnitAdapter < TestingFrameworkAdapter
|
|
COUNT_REGEXP = /in (\d+) test cases/
|
|
FAILURES_REGEXP = /test cases: (\d+) | (\d+) failed/
|
|
BOTH_REGEXP = /test cases: (\d+) | (\d+) passed | (\d+) failed/
|
|
ASSERTION_ERROR_REGEXP = /\n(.+) error:(.+); /
|
|
|
|
def self.framework_name
|
|
'CppUnit'
|
|
end
|
|
|
|
def parse_output(output)
|
|
if SUCCESS_REGEXP.match(output[:stdout])
|
|
{count: Regexp.last_match(1).to_i, passed: Regexp.last_match(1).to_i}
|
|
else
|
|
count = COUNT_REGEXP.match(output[:stdout]).try(:captures).try(:first).try(:to_i) || FAILURES_REGEXP.last_match(0).try(:captures).try(:first).try(:to_i) || SUCCESS_REGEXP.last_match(0).try(:captures).try(:first).try(:to_i) || 0
|
|
failed = FAILURES_REGEXP.match(1).try(:captures).try(:first).try(:to_i) || BOTH_REGEXP.match(2).try(:captures).try(:first).try(:to_i) || 0
|
|
error_matches = ASSERTION_ERROR_REGEXP.match(output[:stdout]).try(:captures) || []
|
|
{count: count, failed: failed, error_messages: error_matches}
|
|
end
|
|
end
|
|
end
|