2026-27-cpp-homework/1003/UnitTest1/UnitTest1.cpp

152 lines
3.2 KiB
C++
Raw Permalink Normal View History

2026-10-24 09:35:47 +02:00
#include "pch.h"
#include "CppUnitTest.h"
#include <feladat1.h>
//Tóth Dániel Mátyás | IFPQYY | v1
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTest1
{
TEST_CLASS(UnitTest1)
{
public:
TEST_METHOD(FractionTest1)
{
Logger::WriteMessage("In feladat1");
char* input = " \n\t\t-1234.5678";
double exp = -1234.5678;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(FractionTest2)
{
Logger::WriteMessage("In feladat1");
char* input = ".5678";
double exp = 0.5678;
double ret = feladat1(input);
Assert::AreEqual(exp, ret, 1e-9); //1e-9 for tolerance, cause the two numbers are not *exactly* the same, theres a tiny difference in the millionth fraction somehwo
}
TEST_METHOD(FractionTest3)
{
Logger::WriteMessage("In feladat1");
char* input = ".1234.5678";
double exp = 0.1234;
double ret = feladat1(input);
Assert::AreEqual(exp, ret, 1e-9);
}
TEST_METHOD(OrderTest1)
{
Logger::WriteMessage("In feladat1");
char* input = " -\n\t\t1234.5678";
double exp = 0;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(OrderTest2)
{
Logger::WriteMessage("In feladat1");
char* input = " \n\t\t1234-.5678";
double exp = 1234;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(OrderTest3)
{
Logger::WriteMessage("In feladat1");
char* input = " \n\t\t1234.56-78";
double exp = 1234.56;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(OrderTest4)
{
Logger::WriteMessage("In feladat1");
char* input = " + 1234.56-78";
double exp = 0;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(NoNumTest1)
{
Logger::WriteMessage("In feladat1");
char* input = " \n\t\t";
double exp = 0;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(NoNumTest2)
{
Logger::WriteMessage("In feladat1");
char* input = "kulturálatlanság";
double exp = 0;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest1)
{
Logger::WriteMessage("In feladat1");
char* input = "123e4";
double exp = 1230000;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest2)
{
Logger::WriteMessage("In feladat1");
char* input = ".123e4";
double exp = 1230;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest3)
{
Logger::WriteMessage("In feladat1");
char* input = "123.e4";
double exp = 1230000;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest4)
{
Logger::WriteMessage("In feladat1");
char* input = "123E4";
double exp = 1230000;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest5)
{
Logger::WriteMessage("In feladat1");
char* input = "123E.4";
double exp = 123;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
TEST_METHOD(ExponentTest6)
{
Logger::WriteMessage("In feladat1");
char* input = "12.3e4 ";
double exp = 123000;
double ret = feladat1(input);
Assert::AreEqual(exp, ret);
}
};
}