| 10 | namespace ftg { |
| 11 | |
| 12 | void Generator::generate(std::string SrcDir, |
| 13 | std::set<std::string> PublicAPIList, |
| 14 | std::string TargetAnalyzerResultPath, |
| 15 | std::string UTAnalyzerResultPath, |
| 16 | std::string OutputDir) { |
| 17 | if (!Loader.load(TargetAnalyzerResultPath, UTAnalyzerResultPath)) |
| 18 | return; |
| 19 | |
| 20 | // generate Fuzzers |
| 21 | Fuzzers = initFuzzers(); |
| 22 | |
| 23 | // generate source codes |
| 24 | generateFuzzSource(Fuzzers, SrcDir, OutputDir); |
| 25 | |
| 26 | // prepare report |
| 27 | exportReportJson(Fuzzers, PublicAPIList, SrcDir, OutputDir); |
| 28 | |
| 29 | // prepare corpus |
| 30 | generateCorpus(Fuzzers, OutputDir); |
| 31 | |
| 32 | printNotGenerated(); |
| 33 | } |
| 34 | |
| 35 | std::vector<std::shared_ptr<Fuzzer>> Generator::initFuzzers() const { |
| 36 | std::vector<std::shared_ptr<Fuzzer>> Fuzzers; |
no test coverage detected