Sha256: 2eddeac5bcf07f0fc92c134bfffe34c6ff3e8d1d2982d96deb219209ca4dba3e

Contents?: true

Size: 1.33 KB

Versions: 12

Compression:

Stored size: 1.33 KB

Contents

#include <boost/filesystem.hpp>
#include <gtest/gtest.h>

#include <fstream>
#include <iostream>
#include <vector>

#include "unpack_pack_fuzzer.cpp"

using ::testing::TestWithParam;
using ::testing::ValuesIn;


std::vector<std::string> ListDirectory(const std::string& path) {
  std::vector<std::string> v;

  boost::filesystem::path p(path);
  boost::filesystem::directory_iterator f{p};

  if(boost::filesystem::is_directory(p)) {
    while (f != boost::filesystem::directory_iterator{}) {
      v.push_back((*f++).path().string());
    }
  }
  return v;
}

class UnpackPackFuzzerRegressionTest : public ::testing::TestWithParam<std::string> {
public:
};

TEST_P(UnpackPackFuzzerRegressionTest, Returns0) {
  auto fpath = GetParam();
  std::ifstream in(fpath, std::ifstream::binary);
  if (!in) {
    FAIL() << fpath << " not found";
  }
  in.seekg(0, in.end);
  size_t length = in.tellg();
  in.seekg(0, in.beg);
  std::vector<char> bytes(length);
  in.read(bytes.data(), bytes.size());
  assert(in);
  EXPECT_EQ(0, LLVMFuzzerTestOneInput(reinterpret_cast<const uint8_t *>(bytes.data()),
                                      bytes.size()));
}

INSTANTIATE_TEST_CASE_P(UnpackPackFuzzerRegressions,
                        UnpackPackFuzzerRegressionTest,
                        ::testing::ValuesIn(ListDirectory("../../fuzz/unpack_pack_fuzzer_regressions")));

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
script_core-0.3.2 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.3.0 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.7 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.6 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.5 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.4 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.3 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.2 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.1 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.2.0 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.1.1 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp
script_core-0.1.0 ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp