forked from qt-creator/qt-creator
CppEditor: Change parsing opposite bracket
Fixed behavior: - when comparing sign was determined as angle bracket - when in complex combination brackets, an opposite bracket was detected not correct - not correct mismatch case highlightning Added tests for the cases form bug 26395 Fixes: QTCREATORBUG-26400 Fixes: QTCREATORBUG-26395 Change-Id: Ic45566d2677f80fb9a8e4fe830307254dd1db51d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -1794,11 +1794,10 @@ TEST_F(TokenProcessor, TemplateSeparateDeclDef)
|
||||
ASSERT_THAT(infos[37], IsHighlightingMark(764u, 5u, 9u, HighlightingType::GlobalVariable));
|
||||
}
|
||||
|
||||
TEST_F(TokenProcessor, NestedTemplate)
|
||||
TEST_F(TokenProcessor, NestedTemplateIncorrect)
|
||||
{
|
||||
const auto infos = translationUnit.tokenInfosInRange(sourceRange(773, 44));
|
||||
ASSERT_THAT(infos[12], HasTwoTypes(HighlightingType::Punctuation,
|
||||
HighlightingType::DoubleAngleBracketClose));
|
||||
ASSERT_THAT(infos[12], HasOnlyType(HighlightingType::Punctuation));
|
||||
}
|
||||
|
||||
TEST_F(TokenProcessor, OperatorInTemplate)
|
||||
@@ -1819,6 +1818,32 @@ TEST_F(TokenProcessor, PreProcessorInStruct)
|
||||
ASSERT_THAT(infos[1], HasOnlyType(HighlightingType::Preprocessor));
|
||||
}
|
||||
|
||||
TEST_F(TokenProcessor, DefinitionWithComparison)
|
||||
{
|
||||
const auto infos = translationUnit.tokenInfosInRange(sourceRange(798, 39));
|
||||
ASSERT_THAT(infos[13], HasOnlyType(HighlightingType::Punctuation));
|
||||
}
|
||||
|
||||
TEST_F(TokenProcessor, GlobalVariableWithComparison)
|
||||
{
|
||||
const auto infos = translationUnit.tokenInfosInRange(sourceRange(800, 18));
|
||||
ASSERT_THAT(infos[5], HasOnlyType(HighlightingType::Punctuation));
|
||||
}
|
||||
|
||||
TEST_F(TokenProcessor, VariableWithComparison)
|
||||
{
|
||||
const auto infos = translationUnit.tokenInfosInRange(sourceRange(803, 22));
|
||||
ASSERT_THAT(infos[5], HasOnlyType(HighlightingType::Punctuation));
|
||||
}
|
||||
|
||||
|
||||
TEST_F(TokenProcessor, NestedTemplate)
|
||||
{
|
||||
const auto infos = translationUnit.tokenInfosInRange(sourceRange(811, 44));
|
||||
ASSERT_THAT(infos[12], HasTwoTypes(HighlightingType::Punctuation,
|
||||
HighlightingType::DoubleAngleBracketClose));
|
||||
}
|
||||
|
||||
Data *TokenProcessor::d;
|
||||
|
||||
void TokenProcessor::SetUpTestCase()
|
||||
|
||||
Reference in New Issue
Block a user