#define DOCTEST_CONFIG_NO_MULTITHREADING #define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN #include "doctest.h" #include "histogram_internal.h" TEST_CASE("null vector") { double min = 0; double max = 0; find_minmax({}, min, max); CHECK(find_minmax({}, min, max) == true); CHECK(min == 1); CHECK(max == 2); CHECK(find_minmax({}, min, max) == false); } TEST_CASE("one number") { double min = 0; double max = 0; find_minmax({1}, min, max); CHECK(find_minmax({1}, min, max) == true); CHECK(min == 1); CHECK(max == 2); CHECK(find_minmax({}, min, max) == false); } TEST_CASE("negative numbers") { double min = 0; double max = 0; find_minmax({-1, -2}, min, max); CHECK(find_minmax({-1, -2}, min, max) == true); CHECK(min == 1); CHECK(max == 2); CHECK(find_minmax({}, min, max) == false); } TEST_CASE("same numbers") { double min = 0; double max = 0; find_minmax({1, 1}, min, max); CHECK(find_minmax({1, 1}, min, max) == true); CHECK(min == 1); CHECK(max == 2); CHECK(find_minmax({}, min, max) == false); } TEST_CASE("distinct positive numbers") { double min = 0; double max = 0; find_minmax({1, 2}, min, max); CHECK(find_minmax({1, 2}, min, max) == true); CHECK(min == 1); CHECK(max == 2); CHECK(find_minmax({}, min, max) == false); }