From 5e1e787e210e879600d25c5580a7a5b43336d634 Mon Sep 17 00:00:00 2001 From: GordiyevskikDA <gordiyevskikda@mpei.ru> Date: Sat, 16 Mar 2024 06:52:26 +0300 Subject: [PATCH] =?UTF-8?q?code:=20=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BC=D0=BE=D0=B4=D1=83=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9?= =?UTF-8?q?=20=D1=82=D0=B5=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- unittest.cpp | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) 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 <vector> #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 <double> 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