From: Carter Waxman Date: Wed, 6 Apr 2016 14:33:00 +0000 (-0400) Subject: added unit for CSVFormatter X-Git-Tag: 3.0.0-233~457^2~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0eb92f70021ca3d97e00fcb9020e8cdb0d682fb0;p=thirdparty%2Fsnort3.git added unit for CSVFormatter --- diff --git a/src/network_inspectors/perf_monitor/csv_formatter.cc b/src/network_inspectors/perf_monitor/csv_formatter.cc index ff35c5458..74cf94a93 100644 --- a/src/network_inspectors/perf_monitor/csv_formatter.cc +++ b/src/network_inspectors/perf_monitor/csv_formatter.cc @@ -20,6 +20,10 @@ #include "csv_formatter.h" +#ifdef UNIT_TEST +#include "catch/catch.hpp" +#endif + using namespace std; SectionRef CSVFormatter::register_section(string name) @@ -37,16 +41,6 @@ void CSVFormatter::init_output(FILE* fh) } -void CSVFormatter::set_field(FieldRef ref, PegCount val) -{ - return PerfFormatter::set_field(ref, val); -} - -void CSVFormatter::set_field(FieldRef ref, double val) -{ - return PerfFormatter::set_field(ref, val); -} - void CSVFormatter::write(FILE* fh, time_t timestamp) { @@ -61,10 +55,10 @@ void CSVFormatter::clear() TEST_CASE("header output", "[perf csv_formatter]") { - const char* cooked = + char* fake_file, cooked = "#timestamp,name.one,name.two,other.three,other.four\n"; - CSVFormatter f(); + CSVFormatter f; FILE* fh = tmpfile(); SectionRef s = f.register_section("name"); @@ -75,6 +69,10 @@ TEST_CASE("header output", "[perf csv_formatter]") f.register_field(s, "four"); f.init_output(fh); + auto size = tell(fh); + rewind(fh); + + fread( fclose(fh); } diff --git a/src/network_inspectors/perf_monitor/csv_formatter.h b/src/network_inspectors/perf_monitor/csv_formatter.h index ad69d8fb1..b624d0edb 100644 --- a/src/network_inspectors/perf_monitor/csv_formatter.h +++ b/src/network_inspectors/perf_monitor/csv_formatter.h @@ -27,12 +27,14 @@ class CSVFormatter : public PerfFormatter { public: CSVFormatter() {}; - virtual ~CSVFormatter() {}; virtual SectionRef register_section(std::string) override; virtual FieldRef register_field(SectionRef, std::string) override; virtual void init_output(FILE*) override; virtual void write(FILE*, time_t) override; virtual void clear() override; + +private: + std::string header; }; #endif diff --git a/src/network_inspectors/perf_monitor/perf_formatter.h b/src/network_inspectors/perf_monitor/perf_formatter.h index 20a3e8347..c7bb7170d 100644 --- a/src/network_inspectors/perf_monitor/perf_formatter.h +++ b/src/network_inspectors/perf_monitor/perf_formatter.h @@ -57,7 +57,7 @@ public: virtual void set_field(FieldRef, PegCount); virtual void set_field(FieldRef, double); virtual void init_output(FILE*); - virtual void write(FILE*); + virtual void write(FILE*, time_t); virtual void clear(); private: