Skip to content

Commit 8bcda41

Browse files
Lana243alexey-utkin
authored andcommitted
refactored output stream for CoverageAndResultsStatisticsPrinter
1 parent f9dbe37 commit 8bcda41

File tree

3 files changed

+15
-11
lines changed

3 files changed

+15
-11
lines changed

server/src/printers/CoverageAndResultsStatisticsPrinter.cpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ namespace printer {
3838
return os;
3939
}
4040

41-
void CoverageAndResultsStatisticsPrinter::write(const utbot::ProjectContext &projectContext,
42-
const Coverage::TestResultMap &testsResultMap,
43-
const Coverage::CoverageMap &coverageMap) {
41+
std::stringstream CoverageAndResultsStatisticsPrinter::write(const utbot::ProjectContext &projectContext,
42+
const Coverage::TestResultMap &testsResultMap,
43+
const Coverage::CoverageMap &coverageMap) {
4444
for (auto const &[testPath, testsResult]: testsResultMap) {
4545
fs::path sourcePath = Paths::testPathToSourcePath(projectContext, testPath);
4646
Coverage::FileCoverage fileCoverage = CollectionUtils::getOrDefault(coverageMap,
@@ -65,9 +65,7 @@ namespace printer {
6565
ss << statistics << '\n';
6666
}
6767
ss << "Total," << total << '\n';
68-
fs::path resultsFilePath = resultsDirectory / "coverage-and-results.csv";
69-
FileSystemUtils::writeToFile(resultsFilePath, ss.str());
70-
LOG_S(INFO) << StringUtils::stringFormat("See statistics info here: %s", resultsFilePath);
68+
return ss;
7169
}
7270

7371
FileCoverageAndResultsStatistics::FileCoverageAndResultsStatistics(

server/src/printers/CoverageAndResultsStatisticsPrinter.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ namespace printer {
3636

3737
class CoverageAndResultsStatisticsPrinter : CollectionUtils::MapFileTo<FileCoverageAndResultsStatistics> {
3838
public:
39-
explicit CoverageAndResultsStatisticsPrinter(fs::path resultsDirectory) :
40-
resultsDirectory(std::move(resultsDirectory)) {};
41-
void write(const utbot::ProjectContext &, const Coverage::TestResultMap &, const Coverage::CoverageMap &);
39+
CoverageAndResultsStatisticsPrinter() = default;
40+
std::stringstream write(const utbot::ProjectContext &projectContext,
41+
const Coverage::TestResultMap &testsResultMap,
42+
const Coverage::CoverageMap &coverageMap);
4243

4344
private:
4445
fs::path resultsDirectory;

server/src/streams/coverage/CLICoverageAndResultsWriter.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include "loguru.h"
88

99
#include <fstream>
10+
#include <utils/StringFormat.h>
1011

1112
CLICoverageAndResultsWriter::CLICoverageAndResultsWriter(const fs::path &resultsDirectory)
1213
: resultsDirectory(resultsDirectory), CoverageAndResultsWriter(nullptr) {
@@ -57,6 +58,10 @@ void CLICoverageAndResultsWriter::writeResponse(const utbot::ProjectContext &pro
5758
fs::path resultsFilePath = resultsDirectory / "tests-result.log";
5859
FileSystemUtils::writeToFile(resultsFilePath, ss.str());
5960
LOG_S(INFO) << ss.str();
60-
printer::CoverageAndResultsStatisticsPrinter statsPrinter = printer::CoverageAndResultsStatisticsPrinter(resultsDirectory);
61-
statsPrinter.write(projectContext, testsResultMap, coverageMap);
61+
62+
printer::CoverageAndResultsStatisticsPrinter statsPrinter = printer::CoverageAndResultsStatisticsPrinter();
63+
std::stringstream statsStringStream = statsPrinter.write(projectContext, testsResultMap, coverageMap);
64+
fs::path statsResultsFilePath = resultsDirectory / "coverage-and-results.csv";
65+
FileSystemUtils::writeToFile(statsResultsFilePath, statsStringStream.str());
66+
LOG_S(INFO) << StringUtils::stringFormat("See coverage and results statistics info here: %s", statsResultsFilePath);
6267
}

0 commit comments

Comments
 (0)