From f9c4c4108ea7b509c55c45db351fc0e1e2e8df82 Mon Sep 17 00:00:00 2001 From: Alexey Utkin Date: Tue, 7 Jun 2016 17:47:12 +0300 Subject: [PATCH] CPP-778 Support for semantic per-variable highlighting (test) --- .../impl/CodeInsightTestFixtureImpl.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java b/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java index 9eabcd33202b..7d48e82d6143 100644 --- a/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java +++ b/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java @@ -1778,6 +1778,23 @@ public class CodeInsightTestFixtureImpl extends BaseFixture implements CodeInsig return result.toString(); } + @NotNull + public String getHighlightingDescription(@NotNull List highlighting, @NotNull String tagName) { + final List borders = new LinkedList(); + for (HighlightInfo region : highlighting) { + borders.add(new Border(Border.LEFT, region.getStartOffset(), "", false)); + borders.add(new Border(Border.RIGHT, region.getEndOffset(), "", false)); + } + Collections.sort(borders); + + StringBuilder result = new StringBuilder(myEditor.getDocument().getText()); + for (Border border : borders) { + result.insert(border.getOffset(), (border.isSide() == Border.LEFT ? "<": ""); + } + + return result.toString(); + } + private void testFoldingRegions(@NotNull String verificationFileName, @Nullable String destinationFileName, boolean doCheckCollapseStatus) { String expectedContent; try {