From f81138161500675cc3c0fca92608682b07bfc32c Mon Sep 17 00:00:00 2001 From: Alexander Shalamov Date: Fri, 29 Nov 2019 15:07:42 +0200 Subject: [test-runner] Log all 'probeFileSize' failures If there are multiple file size probes in a test file, it is better to report all failures instead of first failed probe. --- render-test/runner.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/render-test/runner.cpp b/render-test/runner.cpp index 24bc6668d7..4f4c163b7d 100644 --- a/render-test/runner.cpp +++ b/render-test/runner.cpp @@ -360,6 +360,7 @@ bool TestRunner::checkProbingResults(TestMetadata& metadata) { // Check file size metrics. auto checkFileSize = [](TestMetadata& metadata) -> bool { if (metadata.metrics.fileSize.empty()) return true; + bool passed = true; for (const auto& expected : metadata.expectedMetrics.fileSize) { auto actual = metadata.metrics.fileSize.find(expected.first); if (actual == metadata.metrics.fileSize.end()) { @@ -378,14 +379,16 @@ bool TestRunner::checkProbingResults(TestMetadata& metadata) { auto result = checkValue(expected.second.size, actual->second.size, actual->second.tolerance); if (!std::get(result)) { std::stringstream ss; - ss << "File size does not match at probe \"" << expected.first << "\": " << actual->second.size - << ", expected is " << expected.second.size << "."; + ss << "File size does not match at probe \"" << expected.first << "\" for file \"" + << expected.second.path << "\": " << actual->second.size << ", expected is " << expected.second.size + << "."; - metadata.errorMessage = ss.str(); - return false; + metadata.errorMessage += metadata.errorMessage.empty() ? ss.str() : "\n" + ss.str(); + passed = false; + continue; } } - return true; + return passed; }; auto checkMemory = [](TestMetadata& metadata) -> bool { if (metadata.metrics.memory.empty()) return true; -- cgit v1.2.1