From b524d77549e746a17dd3be53a37e1414246e5845 Mon Sep 17 00:00:00 2001 From: TheRealPad Date: Sun, 3 Mar 2024 18:25:41 -0800 Subject: [PATCH] test(unit tests): add unit test for operations priorities --- tests/OperationsPriorities.cpp | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tests/OperationsPriorities.cpp b/tests/OperationsPriorities.cpp index 9b4cd1c..77f452c 100644 --- a/tests/OperationsPriorities.cpp +++ b/tests/OperationsPriorities.cpp @@ -154,4 +154,31 @@ TEST(ProxyOperationsPriorities, InvalidStringFive) isValid = false; } EXPECT_EQ(isValid, false); +} + +TEST(ProxyOperationsPriorities, OperatorPriorityOne) +{ + std::unique_ptr operations = std::make_unique(); + std::string str = "1+10*2"; + const std::string result = operations->makeOperation(str); + + EXPECT_EQ(result, "21"); +} + +TEST(ProxyOperationsPriorities, OperatorPriorityTwo) +{ + std::unique_ptr operations = std::make_unique(); + std::string str = "(1+10)*2"; + const std::string result = operations->makeOperation(str); + + EXPECT_EQ(result, "22"); +} + +TEST(ProxyOperationsPriorities, OperatorPriorityThree) +{ + std::unique_ptr operations = std::make_unique(); + std::string str = "((1+2)-4)*(5/(2+3))+3"; + const std::string result = operations->makeOperation(str); + + EXPECT_EQ(result, "2"); } \ No newline at end of file