diff --git a/tests/src/utility_test.cpp b/tests/src/utility_test.cpp index c2b7590..6655041 100644 --- a/tests/src/utility_test.cpp +++ b/tests/src/utility_test.cpp @@ -33,6 +33,18 @@ void printLines(const std::vector& lines) { for (const auto& v : lines) std::cout << v << "\n"; + std::cout << std::endl; +} + +int testFunc(int a, int b) +{ + if (a == b) + { + a = 2 * b; + b = 3 * a; + } + + return a; } void blt::test::utility::run() @@ -75,14 +87,15 @@ void blt::test::utility::run() assign1.getRoot()->with( // left (new string::BinaryTreeFormatter::Node("member")) - ->with((new string::BinaryTreeFormatter::Node("total -= total * 0.15")) - ->with((new string::BinaryTreeFormatter::Node("total > 500"))->with(new string::BinaryTreeFormatter::Node("total -= 25"))), - (new string::BinaryTreeFormatter::Node("total -= total * 0.05"))), + ->with((new string::BinaryTreeFormatter::Node("total -= total * 0.15")) + ->with((new string::BinaryTreeFormatter::Node("total > 500")) + ->with(new string::BinaryTreeFormatter::Node("total -= 25"))), + (new string::BinaryTreeFormatter::Node("total -= total * 0.05"))), // right (new string::BinaryTreeFormatter::Node("quality")) - ->with((new string::BinaryTreeFormatter::Node("total -= total * 0.02")), - (new string::BinaryTreeFormatter::Node("total -= total * 0.05"))) - ); + ->with((new string::BinaryTreeFormatter::Node("total -= total * 0.02")), + (new string::BinaryTreeFormatter::Node("total -= total * 0.05"))) + ); printLines(assign1.construct()); blt::string::TableFormatter tableQ2i1("Iteration 0"); @@ -90,9 +103,9 @@ void blt::test::utility::run() tableQ2i1.addColumn("IN"); tableQ2i1.addColumn("OUT"); tableQ2i1.addRow({"Entry (0)", " -- ", "{, }"}); - tableQ2i1.addRow({"(1)", "{, }", "{, }"}); - tableQ2i1.addRow({"(2)", "{, }", "{, }"}); - tableQ2i1.addRow({"(3)", "{, }", "{}"}); + tableQ2i1.addRow({"(1)", "{, }", "{, }"}); + tableQ2i1.addRow({"(2)", "{, }", "{, }"}); + tableQ2i1.addRow({"(3)", "{, }", "{}"}); tableQ2i1.addRow({"(4)", "{}", "{}"}); tableQ2i1.addRow({"(5)", "{}", "{}"}); tableQ2i1.addRow({"Exit (6)", "{}", " -- "}); @@ -104,12 +117,12 @@ void blt::test::utility::run() tableQ2i2.addColumn("IN"); tableQ2i2.addColumn("OUT"); tableQ2i2.addRow({"Entry (0)", " -- ", "{, }"}); - tableQ2i2.addRow({"(1)", "{, }", "{, }"}); - tableQ2i2.addRow({"(2)", "{, }", "{, }"}); - tableQ2i2.addRow({"(3)", "{, }", "{, }"}); - tableQ2i2.addRow({"(4)", "{, }", "{, }"}); - tableQ2i2.addRow({"(5)", "{, }", "{, }"}); - tableQ2i2.addRow({"Exit (6)", "{, }", " -- "}); + tableQ2i2.addRow({"(1)", "{, }", "{, }"}); + tableQ2i2.addRow({"(2)", "{, }", "{, }"}); + tableQ2i2.addRow({"(3)", "{, }", "{, }"}); + tableQ2i2.addRow({"(4)", "{, }", "{, }"}); + tableQ2i2.addRow({"(5)", "{, }", "{, }"}); + tableQ2i2.addRow({"Exit (6)", "{, }", " -- "}); printLines(tableQ2i2.createTable(true, true)); @@ -118,27 +131,77 @@ void blt::test::utility::run() tableQ2i3.addColumn("IN"); tableQ2i3.addColumn("OUT"); tableQ2i3.addRow({"Entry (0)", " -- ", "{, }"}); - tableQ2i3.addRow({"(1)", "{, }", "{, }"}); - tableQ2i3.addRow({"(2)", "{, }", "{, }"}); - tableQ2i3.addRow({"(3)", "{, }", "{, }"}); - tableQ2i3.addRow({"(4)", "{, }", "{, }"}); - tableQ2i3.addRow({"(5)", "{, }", "{, }"}); - tableQ2i3.addRow({"Exit (6)", "{, }", " -- "}); + tableQ2i3.addRow({"(1)", "{, }", "{, }"}); + tableQ2i3.addRow({"(2)", "{, }", "{, }"}); + tableQ2i3.addRow({"(3)", "{, }", "{, }"}); + tableQ2i3.addRow({"(4)", "{, }", "{, }"}); + tableQ2i3.addRow({"(5)", "{, }", "{, }"}); + tableQ2i3.addRow({"Exit (6)", "{, }", " -- "}); printLines(tableQ2i3.createTable(true, true)); - blt::string::TableFormatter tableQ4i0("Q4 Iteration 1"); + blt::string::TableFormatter tableQ2i4("Iteration 3"); + tableQ2i4.addColumn("Statement"); + tableQ2i4.addColumn("IN"); + tableQ2i4.addColumn("OUT"); + tableQ2i4.addRow({"Entry (0)", " -- ", "{, }"}); + tableQ2i4.addRow({"(1)", "{, }", "{, }"}); + tableQ2i4.addRow({"(2)", "{, }", "{, }"}); + tableQ2i4.addRow({"(3)", "{, }", "{, }"}); + tableQ2i4.addRow({"(4)", "{, }", "{, }"}); + tableQ2i4.addRow({"(5)", "{, }", "{, }"}); + tableQ2i4.addRow({"Exit (6)", "{, }", " -- "}); + + printLines(tableQ2i4.createTable(true, true)); + + blt::string::TableFormatter tableQ4i0("Q4 Iteration 0"); tableQ4i0.addColumn("Statement"); tableQ4i0.addColumn("IN"); tableQ4i0.addColumn("OUT"); tableQ4i0.addRow({"Entry (1)", " -- ", " {} "}); - tableQ4i0.addRow({"(2)", "{}", "{}"}); - tableQ4i0.addRow({"(3)", "{}", "{}"}); - tableQ4i0.addRow({"(4)", "{x = a + b, y = a * b}", "{x = a + b, y = a * b}"}); - tableQ4i0.addRow({"(5)", "{x = a + b, y = a * b}", "{x = a + b, y = a * b}"}); - tableQ4i0.addRow({"(6)", "{x = a + b, y = a * b}", "{x = a + b, y = a * b}"}); - tableQ4i0.addRow({"(7)", "{}", "{}"}); - tableQ4i0.addRow({"(8)", "{}", "{}"}); - tableQ4i0.addRow({"(9)", "{}", "{}"}); - tableQ4i0.addRow({"Exit (10)", "{, }", " -- "}); + tableQ4i0.addRow({"(2)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(3)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(4)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(5)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(6)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(7)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(8)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"(9)", "{a + b, a * b, a - b, b + 1}", "{a + b, a * b, a - b, b + 1}"}); + tableQ4i0.addRow({"Exit (10)", "{a + b, a * b, a - b, b + 1}", " -- "}); + + printLines(tableQ4i0.createTable(true, true)); + + blt::string::TableFormatter tableQ4i1("Q4 Iteration 1"); + tableQ4i1.addColumn("Statement"); + tableQ4i1.addColumn("IN"); + tableQ4i1.addColumn("OUT"); + tableQ4i1.addRow({"Entry (1)", " -- ", " {} "}); + tableQ4i1.addRow({"(2)", "{}", "{}"}); + tableQ4i1.addRow({"(3)", "{}", "{}"}); + tableQ4i1.addRow({"(4)", "{}", "{a + b}"}); + tableQ4i1.addRow({"(5)", "{a + b}", "{a + b, a * b}"}); + tableQ4i1.addRow({"(6)", "{a + b, a * b}", "{a + b, a * b, a - b}"}); + tableQ4i1.addRow({"(7)", "{a + b, a * b, a - b}", "{}"}); + tableQ4i1.addRow({"(8)", "{}", "{a + b}"}); + tableQ4i1.addRow({"(9)", "{a + b}", "{a + b, a * b}"}); + tableQ4i1.addRow({"Exit (10)", "{a + b, a * b, a - b}", " -- "}); + + printLines(tableQ4i1.createTable(true, true)); + + blt::string::TableFormatter tableQ4i2("Q4 Iteration 2"); + tableQ4i2.addColumn("Statement"); + tableQ4i2.addColumn("IN"); + tableQ4i2.addColumn("OUT"); + tableQ4i2.addRow({"Entry (1)", " -- ", " {} "}); + tableQ4i2.addRow({"(2)", "{}", "{}"}); + tableQ4i2.addRow({"(3)", "{}", "{}"}); + tableQ4i2.addRow({"(4)", "{}", "{a + b}"}); + tableQ4i2.addRow({"(5)", "{a + b}", "{a + b, a * b}"}); + tableQ4i2.addRow({"(6)", "{a + b, a * b}", "{a + b, a * b, a - b}"}); + tableQ4i2.addRow({"(7)", "{a + b, a * b, a - b}", "{}"}); + tableQ4i2.addRow({"(8)", "{}", "{a + b}"}); + tableQ4i2.addRow({"(9)", "{a + b}", "{a + b, a * b}"}); + tableQ4i2.addRow({"Exit (10)", "{a + b, a * b, a - b}", " -- "}); + + printLines(tableQ4i2.createTable(true, true)); }