- void readCoverageRegions(std::string Coverage) {
- SmallVector<StringRef, 8> Filenames;
- for (const auto &E : Files)
- Filenames.push_back(E.getKey());
- RawCoverageMappingReader Reader(Coverage, Filenames, OutputFiles,
- OutputExpressions, OutputCMRs);
- std::error_code EC = Reader.read();
- ASSERT_EQ(instrprof_error::success, EC);
- }
-};
-
-TEST_F(CoverageMappingTest, basic_write_read) {
- addCMR(Counter::getCounter(0), "foo", 1, 1, 1, 1);
- addCMR(Counter::getCounter(1), "foo", 2, 1, 2, 2);
- addCMR(Counter::getZero(), "foo", 3, 1, 3, 4);
- addCMR(Counter::getCounter(2), "foo", 4, 1, 4, 8);
- addCMR(Counter::getCounter(3), "bar", 1, 2, 3, 4);
- std::string Coverage = writeCoverageRegions();
- readCoverageRegions(Coverage);
-
- size_t N = makeArrayRef(InputCMRs).size();
- ASSERT_EQ(N, OutputCMRs.size());
+TEST(CoverageMappingTest, basic_write_read) {
+ int NumFiles = 2;
+ CounterMappingRegion InputRegions[] = {
+ CounterMappingRegion::makeRegion(Counter::getCounter(0), 0, 1, 1, 1, 1),
+ CounterMappingRegion::makeRegion(Counter::getCounter(1), 0, 2, 1, 2, 2),
+ CounterMappingRegion::makeRegion(Counter::getZero(), 0, 3, 1, 3, 4),
+ CounterMappingRegion::makeRegion(Counter::getCounter(2), 0, 4, 1, 4, 8),
+ CounterMappingRegion::makeRegion(Counter::getCounter(3), 1, 1, 2, 3, 4),
+ };
+ std::string Coverage = writeCoverage(InputRegions, NumFiles);
+ std::vector<CounterMappingRegion> OutputRegions =
+ readCoverageRegions(Coverage, NumFiles);
+ ASSERT_FALSE(OutputRegions.empty());
+
+ size_t N = makeArrayRef(InputRegions).size();
+ ASSERT_EQ(N, OutputRegions.size());