Clang: Honor fixits own locations in ClangFixItOperation

The fixits have own ranges/locations and thus might address more than
one file.

Change-Id: I5ee59944bef588e763a91f054a60823593373a0e
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Nikolai Kosjar
2016-06-27 10:45:51 +02:00
parent c406f71296
commit ed8b910202
6 changed files with 75 additions and 37 deletions

View File

@@ -58,7 +58,7 @@ MATCHER_P(MatchText, expectedText,
+ " expected text:\n" + PrintToString(expectedText))
{
const ::ClangFixItOperation &operation = arg;
QString resultText = operation.refactoringFileContent_forTestOnly();
QString resultText = operation.firstRefactoringFileContent_forTestOnly();
if (resultText != expectedText) {
*result_listener << "\n" << resultText.toUtf8().constData();
@@ -95,7 +95,7 @@ protected:
TEST_F(ClangFixItOperation, Description)
{
::ClangFixItOperation operation(semicolonFilePath, diagnosticText, {semicolonFixItContainer});
::ClangFixItOperation operation(diagnosticText, {semicolonFixItContainer});
ASSERT_THAT(operation.description(),
QStringLiteral("Apply Fix: expected ';' at end of declaration"));
@@ -103,7 +103,7 @@ TEST_F(ClangFixItOperation, Description)
TEST_F(ClangFixItOperation, AppendSemicolon)
{
::ClangFixItOperation operation(semicolonFilePath, diagnosticText, {semicolonFixItContainer});
::ClangFixItOperation operation(diagnosticText, {semicolonFixItContainer});
operation.perform();
@@ -112,7 +112,7 @@ TEST_F(ClangFixItOperation, AppendSemicolon)
TEST_F(ClangFixItOperation, ComparisonVersusAssignmentChooseComparison)
{
::ClangFixItOperation operation(compareFilePath, diagnosticText, {compareFixItContainer});
::ClangFixItOperation operation(diagnosticText, {compareFixItContainer});
operation.perform();
@@ -121,8 +121,7 @@ TEST_F(ClangFixItOperation, ComparisonVersusAssignmentChooseComparison)
TEST_F(ClangFixItOperation, ComparisonVersusAssignmentChooseParentheses)
{
::ClangFixItOperation operation(compareFilePath,
diagnosticText,
::ClangFixItOperation operation(diagnosticText,
{assignmentFixItContainerParenLeft,
assignmentFixItContainerParenRight});