diff options
author | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-12-09 14:30:18 +0100 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-12-16 15:36:47 +0000 |
commit | 4382274ba45e70f1c8dea13788d3d57d89be506b (patch) | |
tree | 62e25847bfc575a1f7107d9f5f920fad88388245 /tests/unit | |
parent | 18fa35c1529f247eac4caa8434c344d37c3629ce (diff) | |
download | qt-creator-4382274ba45e70f1c8dea13788d3d57d89be506b.tar.gz |
Clang: Fix emphasizing current parameter in function signature tooltip
...when completing function calls.
Task-number: QTCREATORBUG-15108
Change-Id: If55effe117774f3ec5debb03a9c7889981ea27d2
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Diffstat (limited to 'tests/unit')
-rw-r--r-- | tests/unit/unittest/completionchunkstotextconvertertest.cpp | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/tests/unit/unittest/completionchunkstotextconvertertest.cpp b/tests/unit/unittest/completionchunkstotextconvertertest.cpp index b9c1dd9a5a..20008fe847 100644 --- a/tests/unit/unittest/completionchunkstotextconvertertest.cpp +++ b/tests/unit/unittest/completionchunkstotextconvertertest.cpp @@ -119,6 +119,72 @@ TEST_F(CompletionChunksToTextConverter, ConvertFunctionWithParameters) ASSERT_THAT(converter.text(), QStringLiteral("int Function(char x)")); } +TEST_F(CompletionChunksToTextConverter, ConvertToFunctionSignatureWithOneArgument) +{ + CodeCompletionChunks completionChunks({integerResultType, + functionName, + leftParen, + functionArgumentX, + rightParen}); + + using ClangCodeModel::Internal::CompletionChunksToTextConverter; + + ASSERT_THAT(converter.convertToFunctionSignature(completionChunks), + QStringLiteral("int Function(char x)")); +} + +TEST_F(CompletionChunksToTextConverter, ConvertToFunctionSignatureWithOneParameterThatIsActive) +{ + CodeCompletionChunks completionChunks({integerResultType, + functionName, + leftParen, + functionArgumentX, + rightParen}); + + ASSERT_THAT(converter.convertToFunctionSignature(completionChunks, 1), + QStringLiteral("int Function(<b>char x</b>)")); +} + +TEST_F(CompletionChunksToTextConverter, ConvertToFunctionSignatureWithOneParameterAndInInvalidActiveParameter) +{ + CodeCompletionChunks completionChunks({integerResultType, + functionName, + leftParen, + functionArgumentX, + rightParen}); + + ASSERT_THAT(converter.convertToFunctionSignature(completionChunks, -1), + QStringLiteral("int Function(char x)")); +} + +TEST_F(CompletionChunksToTextConverter, ConvertToFunctionSignatureWithTwoParametersWhereOneIsActive) +{ + CodeCompletionChunks completionChunks({integerResultType, + functionName, + leftParen, + functionArgumentX, + comma, + functionArgumentY, + rightParen}); + + ASSERT_THAT(converter.convertToFunctionSignature(completionChunks, 2), + QStringLiteral("int Function(char x, <b>int y</b>)")); +} + +TEST_F(CompletionChunksToTextConverter, ConvertToFunctionSignatureWithTwoParametersWhereOneIsOptionalAndActive) +{ + CodeCompletionChunks completionChunks({integerResultType, + functionName, + leftParen, + functionArgumentX, + optionalComma, + optionalFunctionArgumentY, + rightParen}); + + ASSERT_THAT(converter.convertToFunctionSignature(completionChunks, 2), + QStringLiteral("int Function(char x<i>, <b>int y</b></i>)")); +} + TEST_F(CompletionChunksToTextConverter, ConvertFunctionWithOptionalParameter) { CodeCompletionChunks completionChunks({integerResultType, |