From 7c667bbf994b9c0db41a87ff3d41911e05fec06d Mon Sep 17 00:00:00 2001 From: firewave Date: Mon, 4 Dec 2023 19:23:51 +0100 Subject: [PATCH] TestAstUtils: changed a few `isSameExpressionTest()` asserts to TODO / added some TODOs about missing test coverage --- test/testastutils.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/test/testastutils.cpp b/test/testastutils.cpp index eacaaace885f..894b9ef71bcd 100644 --- a/test/testastutils.cpp +++ b/test/testastutils.cpp @@ -179,12 +179,13 @@ class TestAstUtils : public TestFixture { Library library; Tokenizer tokenizer(&settings, this); std::istringstream istr(code); - ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); + ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); // TODO: test with C const Token * const tok1 = Token::findsimplematch(tokenizer.tokens(), tokStr1, strlen(tokStr1)); const Token * const tok2 = Token::findsimplematch(tok1->next(), tokStr2, strlen(tokStr2)); - return (isSameExpression)(false, false, tok1, tok2, library, false, true, nullptr); + return (isSameExpression)(/*cpp*/true, false, tok1, tok2, library, false, true, nullptr); } + // TODO: we used to tokenize this as C++ but check the expressions forcefully as C void isSameExpressionTest() { ASSERT_EQUALS(true, isSameExpression("x = 1 + 1;", "1", "1")); ASSERT_EQUALS(false, isSameExpression("x = 1 + 1u;", "1", "1u")); @@ -196,11 +197,11 @@ class TestAstUtils : public TestFixture { ASSERT_EQUALS(false, isSameExpression("x < y;", "x", "y")); ASSERT_EQUALS(true, isSameExpression("(x + 1) < (x + 1);", "+", "+")); ASSERT_EQUALS(false, isSameExpression("(x + 1) < (x + 1L);", "+", "+")); - ASSERT_EQUALS(true, isSameExpression("(1 + x) < (x + 1);", "+", "+")); + TODO_ASSERT_EQUALS(true, false, isSameExpression("(1 + x) < (x + 1);", "+", "+")); ASSERT_EQUALS(false, isSameExpression("(1.0l + x) < (1.0 + x);", "+", "+")); - ASSERT_EQUALS(true, isSameExpression("(0.0 + x) < (x + 0x0p+0);", "+", "+")); + TODO_ASSERT_EQUALS(true, false, isSameExpression("(0.0 + x) < (x + 0x0p+0);", "+", "+")); ASSERT_EQUALS(true, isSameExpression("void f() {double y = 1e1; (x + y) < (x + 10.0); } ", "+", "+")); - ASSERT_EQUALS(true, isSameExpression("void f() {double y = 1e1; (x + 10.0) < (y + x); } ", "+", "+")); + TODO_ASSERT_EQUALS(true, false, isSameExpression("void f() {double y = 1e1; (x + 10.0) < (y + x); } ", "+", "+")); ASSERT_EQUALS(true, isSameExpression("void f() {double y = 1e1; double z = 10.0; (x + y) < (x + z); } ", "+", "+")); ASSERT_EQUALS(true, isSameExpression("A + A", "A", "A")); @@ -217,10 +218,10 @@ class TestAstUtils : public TestFixture { const Settings settings; Tokenizer tokenizer(&settings, this); std::istringstream istr(code); - ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); + ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); // TODO: test with C const Token * const tok1 = Token::findsimplematch(tokenizer.tokens(), startPattern, strlen(startPattern)); const Token * const tok2 = Token::findsimplematch(tokenizer.tokens(), endPattern, strlen(endPattern)); - return (isVariableChanged)(tok1, tok2, 1, false, &settings, true); + return (isVariableChanged)(tok1, tok2, 1, false, &settings, /*cpp*/true); } void isVariableChangedTest() { @@ -393,11 +394,11 @@ class TestAstUtils : public TestFixture { const Settings settings = settingsBuilder().library("std.cfg").build(); Tokenizer tokenizer(&settings, this); std::istringstream istr(code); - ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); + ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line); // TODO: test with C const Token* const start = Token::findsimplematch(tokenizer.tokens(), startPattern, strlen(startPattern)); const Token* const end = Token::findsimplematch(start, endPattern, strlen(endPattern)); const Token* const expr = Token::findsimplematch(tokenizer.tokens(), var, strlen(var)); - return (findExpressionChanged)(expr, start, end, &settings, true); + return (findExpressionChanged)(expr, start, end, &settings, /*cpp*/true); } void isExpressionChangedTest()