Skip to content

Commit

Permalink
SLI-1616 Send file to backend when opening a file (#1177)
Browse files Browse the repository at this point in the history
  • Loading branch information
nquinquenel authored Sep 24, 2024
1 parent 9561e72 commit 1d061a0
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ class FileBrowserDialogFixture(
val projectsDir = Paths.get("projects").toAbsolutePath()
val projectBaseDir = projectsDir.resolve("$projectName-tmp")
val button = button("OK")
waitFor { button.isEnabled() }
waitFor(Duration.ofSeconds(10)) { button.isEnabled() }

// Select parent folder and refresh
textField.text = projectsDir.normalize().toString()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,14 @@
import com.intellij.openapi.fileEditor.FileEditorManager;
import com.intellij.openapi.fileEditor.FileEditorManagerListener;
import com.intellij.openapi.vfs.VirtualFile;
import java.util.List;
import java.util.Map;
import org.jetbrains.annotations.NotNull;
import org.sonarlint.intellij.analysis.AnalysisSubmitter;
import org.sonarlint.intellij.core.BackendService;
import org.sonarlint.intellij.fs.VirtualFileEvent;
import org.sonarlint.intellij.util.SonarLintAppUtils;
import org.sonarsource.sonarlint.plugin.api.module.file.ModuleFileEvent;

import static org.sonarlint.intellij.common.util.SonarLintUtils.getService;
import static org.sonarlint.intellij.util.ThreadUtilsKt.runOnPooledThread;
Expand All @@ -32,6 +38,12 @@ public class EditorOpenTrigger implements FileEditorManagerListener {

@Override
public void fileOpened(@NotNull FileEditorManager source, @NotNull VirtualFile file) {
runOnPooledThread(source.getProject(), () -> getService(source.getProject(), AnalysisSubmitter.class).autoAnalyzeFile(file, TriggerType.EDITOR_OPEN));
runOnPooledThread(source.getProject(), () -> {
var module = SonarLintAppUtils.findModuleForFile(file, source.getProject());
if (module != null) {
getService(BackendService.class).updateFileSystem(Map.of(module, List.of(new VirtualFileEvent(ModuleFileEvent.Type.CREATED, file))));
}
getService(source.getProject(), AnalysisSubmitter.class).autoAnalyzeFile(file, TriggerType.EDITOR_OPEN);
});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import org.sonarlint.intellij.analysis.AnalysisSubmitter;

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.timeout;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoInteractions;
Expand All @@ -50,6 +51,7 @@ void start() {
file = createAndOpenTestVirtualFile("MyClass.java", Language.findLanguageByID("JAVA"), "class MyClass{}");
editorManager = mock(FileEditorManager.class);
when(editorManager.getProject()).thenReturn(getProject());
reset(analysisSubmitter);
}

@Test
Expand Down

0 comments on commit 1d061a0

Please sign in to comment.