Coverage Report

Created: 2023-11-12 09:30

/proc/self/cwd/test/fuzz/utility.cc
Line
Count
Source (jump to first uncovered line)
1
#include "test/fuzz/utility.h"
2
3
#include "source/common/common/logger.h"
4
5
#include "absl/strings/str_format.h"
6
7
namespace Envoy {
8
namespace Fuzz {
9
10
0
std::vector<std::string> fuzzFindDiffs(absl::string_view expected, absl::string_view actual) {
11
0
  std::vector<std::string> diffs;
12
0
  const uint32_t max_diffs = 5;
13
0
  if (expected.size() != actual.size()) {
14
0
    diffs.push_back(absl::StrCat("Size mismatch: ", expected.size(), " != ", actual.size()));
15
0
  }
16
0
  uint32_t min_size = std::min(expected.size(), actual.size());
17
0
  for (uint32_t i = 0; i < min_size && diffs.size() < max_diffs; ++i) {
18
0
    if (expected[i] != actual[i]) {
19
0
      diffs.push_back(absl::StrFormat("[%d]: %c(%u) != %c(%u)", i, expected[i], expected[i],
20
0
                                      actual[i], actual[i]));
21
0
    }
22
0
  }
23
0
  return diffs;
24
0
}
25
26
} // namespace Fuzz
27
} // namespace Envoy