/
AirLexa
/
origin
Обзор
Документация
Войти
/
AirLexa
/
origin
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
Lesson_12/Task_2/UnitTest/UnitTest.cpp
61 строка
2 KB
AirLexa
еще раз Lesson_12/Task_2/UnitTest/UnitTest.cpp
25 дек 2025, 13:22
25 дек 2025, 13:22
1ca8793
Код
Авторство
О чём код?
#include "pch.h" #include "CppUnitTest.h" #include "../extended_array.h" using namespace Microsoft::VisualStudio::CppUnitTestFramework; namespace UnitTest { TEST_CLASS(UnitTest) { public: TEST_METHOD(TestMeanCorrectRange) { ExtArray<int> ea{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; bool error = false; try { auto res = ea.mean(1, 4); // корректный диапазон } catch (...) // если любая ошибка, то указываем это { error = true; } Assert::IsFalse(error); // если не было исключения, то тест выполнен } TEST_METHOD(TestMeanFailRange_1) { // некорректный диапазон - конец больше размера массива Assert::ExpectException<std::invalid_argument>([]() { ExtArray<int> ea{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; auto res = ea.mean(4, 30); } ); } TEST_METHOD(TestMeanFailRange_2) { // некорректный диапазон - отрицательное число в начале Assert::ExpectException<std::invalid_argument>([]() { ExtArray<int> ea{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; auto res = ea.mean(-2, 6); } ); } TEST_METHOD(TestMeanFailRange_3) { // некорректный диапазон - начало больше конца Assert::ExpectException<std::invalid_argument>([]() { ExtArray<int> ea{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; auto res = ea.mean(5, 3); } ); } }; }