|
|
#ifdef TEST
#include "unity.h"
#include "inputHandling.h"
char halloWelt[]="Hallo Welt"; char halloWelt2[]="Hallo Welt"; char halloWelt3[]="Ha llo W el t "; char halloWelt4[]="Ha\n\nllo \r W el\r\r t "; calc_op formula = {0};
void setUp(void) { formula.functionsType = opNotSupported; }
void tearDown(void) { }
void test_inputHandling_deleteOneWhiteSpace(void) { deleteWhitespace(halloWelt, 10); TEST_ASSERT_EQUAL_STRING("HalloWelt", halloWelt); }
void test_inputHandling_deleteTwoWhiteSpaces(void) { deleteWhitespace(halloWelt2, 11); TEST_ASSERT_EQUAL_STRING("HalloWelt", halloWelt2); }
void test_inputHandling_deleteManyWhiteSpaces(void) { deleteWhitespace(halloWelt3, 16); TEST_ASSERT_EQUAL_STRING("HalloWelt", halloWelt3); }
void test_inputHandling_deleteAllOtherCharacter(void) { deleteWhitespace(halloWelt4, 19); TEST_ASSERT_EQUAL_STRING("HalloWelt", halloWelt4); }
void test_inputHandling_findAddFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator("4+5", 3); TEST_ASSERT_TRUE(opAdd == type); }
void test_inputHandling_findSubFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator("4-5", 3); TEST_ASSERT_TRUE(opSub == type); }
void test_inputHandling_findMultiFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator("4*5", 3); TEST_ASSERT_TRUE(opMult == type); }
void test_inputHandling_findDivFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator("4/5", 3); TEST_ASSERT_TRUE(opDiv == type); type = opNotSupported; type = detectFunctionOperator("4:5", 3); TEST_ASSERT_TRUE(opDiv == type); }
void test_inputHandling_findExpFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator("4^5", 3); TEST_ASSERT_TRUE(opExp == type); }
void test_inputHandling_findEmptyFunctionType(void) { op type = opNotSupported; type = detectFunctionOperator(halloWelt, 10); TEST_ASSERT_TRUE(opEmpty == type); }
void test_inputHandling_getNumbersNoFormular(void) { char* pnt = NULL; pnt = getNumbers(halloWelt, 10, &formula); TEST_ASSERT_NULL(pnt); }
void test_inputHandling_getNumbersAddFormular(void) { char* pnt = NULL; char add[] = "4+5"; formula.functionsType = detectFunctionOperator(add,3); TEST_ASSERT_TRUE(formula.functionsType == opAdd); pnt = getNumbers(add, 3, &formula); showStruct(&formula); TEST_ASSERT_NULL(pnt); TEST_ASSERT_EQUAL_DOUBLE(4.0, formula.inputNumbers[0]); TEST_ASSERT_EQUAL_DOUBLE(5.0, formula.inputNumbers[1]); TEST_ASSERT_EQUAL_INT(2, formula.arrayLength); }
void test_inputHandling_getNumbersSubFormular(void) { char* pnt = NULL; char sub[] = "4-5"; formula.functionsType = detectFunctionOperator(sub,3); TEST_ASSERT_TRUE(formula.functionsType == opSub); pnt = getNumbers(sub, 3, &formula); showStruct(&formula); TEST_ASSERT_NULL(pnt); TEST_ASSERT_EQUAL_DOUBLE(4.0, formula.inputNumbers[0]); TEST_ASSERT_EQUAL_DOUBLE(5.0, formula.inputNumbers[1]); TEST_ASSERT_EQUAL_INT(2, formula.arrayLength); }
void test_inputHandling_getNumbersMultiFormular(void) { char* pnt = NULL; char multi[] = "4*5"; formula.functionsType = detectFunctionOperator(multi,3); TEST_ASSERT_TRUE(formula.functionsType == opMult); pnt = getNumbers(multi, 3, &formula); showStruct(&formula); TEST_ASSERT_NULL(pnt); TEST_ASSERT_EQUAL_DOUBLE(4.0, formula.inputNumbers[0]); TEST_ASSERT_EQUAL_DOUBLE(5.0, formula.inputNumbers[1]); TEST_ASSERT_EQUAL_INT(2, formula.arrayLength); }
void test_inputHandling_getNumbersDivFormular(void) { char* pnt = NULL; char div[] = "4/5"; formula.functionsType = detectFunctionOperator(div,3); TEST_ASSERT_TRUE(formula.functionsType == opDiv); pnt = getNumbers(div, 3, &formula); showStruct(&formula); TEST_ASSERT_NULL(pnt); TEST_ASSERT_EQUAL_DOUBLE(4.0, formula.inputNumbers[0]); TEST_ASSERT_EQUAL_DOUBLE(5.0, formula.inputNumbers[1]); TEST_ASSERT_EQUAL_INT(2, formula.arrayLength); }
void test_inputHandling_getNextCalc(void) { calc_op* pnt = NULL; char add[] = "4+5"; processInput(add, 3); pnt = getNextCalc(); TEST_ASSERT_NOT_NULL(pnt); TEST_ASSERT_TRUE(pnt->functionsType == opAdd); pnt = getNextCalc(); TEST_ASSERT_NOT_NULL(pnt); TEST_ASSERT_TRUE(pnt->functionsType == opResult); pnt = getNextCalc(); TEST_ASSERT_NULL(pnt); } #endif // TEST
|