diff --git a/unittest.cpp b/unittest.cpp index a317f71..13ed78d 100644 --- a/unittest.cpp +++ b/unittest.cpp @@ -1,7 +1,9 @@ #define DOCTEST_CONFIG_NO_MULTITHREADING #define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN #include "doctest.h" +#include #include "histogram_internal.h" +using namespace std; TEST_CASE("distinct positive numbers") { double min = 0; @@ -9,4 +11,45 @@ TEST_CASE("distinct positive numbers") { FindMinMax({ 1, 2 }, min, max); CHECK(min == 1); CHECK(max == 2); +} + +/* +Если вектор пуст, искусственно добавляем в него значения +Проверяем, равны ли min и max этим искусственным значениям +*/ +TEST_CASE("empty vector") { + double min = 0; + double max = 0; + vector fortest; + if (fortest.size() == 0) { + fortest.push_back(90); + fortest.push_back(100); + } + FindMinMax(fortest, min, max); + CHECK(min != 90); + CHECK(max != 100); +} + +TEST_CASE("one element") { + double min = 0; + double max = 0; + FindMinMax({ 1 }, min, max); + CHECK(min == 1); + CHECK(max == 1); +} + +TEST_CASE("negative elements") { + double min = 0; + double max = 0; + FindMinMax({ -81, 2 }, min, max); + CHECK(min == -81); + CHECK(max == 2); +} + +TEST_CASE("simular elements") { + double min = 0; + double max = 0; + FindMinMax({ 23, 23, 23 }, min, max); + CHECK(min == 23); + CHECK(max == 23); } \ No newline at end of file