diff --git a/histogram_internal.h b/histogram_internal.h index 34592d8..3a2e060 100644 --- a/histogram_internal.h +++ b/histogram_internal.h @@ -4,6 +4,6 @@ #include void -find_minmax(const std::vector& numbers, double& min, double& max) +find_minmax(const std::vector& numbers, double& min, double& max); #endif // HISTOGRAM_INTERNAL_H_INCLUDED diff --git a/unittest.cpp b/unittest.cpp index e69de29..1ee1609 100644 --- a/unittest.cpp +++ b/unittest.cpp @@ -0,0 +1,37 @@ +#define DOCTEST_CONFIG_NO_MULTITHREADING +#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN +#include +#include "doctest.h" +#include "histogram_internal.h" + +TEST_CASE("distinct positive numbers") { + double min = 0; + double max = 0; + find_minmax({1, 2}, min, max); + CHECK(min == 1); + CHECK(max == 2); +} + +TEST_CASE("negative numbers") { + double min = 0; + double max = 0; + find_minmax({ -10, 10 }, min, max); + CHECK(min == -10); + CHECK(max == 10); +} + +TEST_CASE("empty numbers") { + double min = 0; + double max = 0; + find_minmax({ }, min, max); + CHECK(min != 0); + CHECK(max != 0); +} + +TEST_CASE("one number") { + double min = 0; + double max = 0; + find_minmax({ 2 }, min, max); + CHECK(min == 2); + CHECK(max == 2); +}