Updated dependencies. Tests work again. Cosmetics, fixed warnings.
This commit is contained in:
@@ -12,6 +12,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.junit.jupiter.api.extension.*;
|
||||
import org.junit.jupiter.api.extension.ExtensionContext.Namespace;
|
||||
import org.junit.jupiter.api.extension.ExtensionContext.Store;
|
||||
import org.junit.runner.Description;
|
||||
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.lang.reflect.Method;
|
||||
@@ -34,8 +35,11 @@ public class LightCodeInsightExtension implements ParameterResolver, AfterTestEx
|
||||
public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
|
||||
LightCodeInsightFixtureTestCaseWrapper testCase = getWrapper(extensionContext);
|
||||
Parameter parameter = parameterContext.getParameter();
|
||||
if (parameter.isAnnotationPresent(MyFixture.class)) return testCase.getMyFixture();
|
||||
else if (parameter.isAnnotationPresent(MyTestCase.class)) return testCase;
|
||||
if (parameter.isAnnotationPresent(MyFixture.class)) {
|
||||
return testCase.getMyFixture();
|
||||
} else if (parameter.isAnnotationPresent(MyTestCase.class)) {
|
||||
return testCase;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -68,14 +72,15 @@ public class LightCodeInsightExtension implements ParameterResolver, AfterTestEx
|
||||
@Override
|
||||
public void interceptTestMethod(Invocation<Void> invocation, ReflectiveInvocationContext<Method> invocationContext, ExtensionContext extensionContext) throws Throwable {
|
||||
Throwable[] throwables = new Throwable[1];
|
||||
Description testDescription = Description.createTestDescription(extensionContext.getRequiredTestClass(), getWrapper(extensionContext).getName());
|
||||
|
||||
Runnable runnable = () -> {
|
||||
try {
|
||||
TestLoggerFactory.onTestStarted();
|
||||
invocation.proceed();
|
||||
TestLoggerFactory.onTestFinished(true);
|
||||
TestLoggerFactory.onTestFinished(true, testDescription);
|
||||
} catch (Throwable e) {
|
||||
TestLoggerFactory.onTestFinished(false);
|
||||
TestLoggerFactory.onTestFinished(false, testDescription);
|
||||
throwables[0] = e;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -6,14 +6,13 @@ import com.intellij.mock.MockProjectEx;
|
||||
import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.util.Disposer;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.testFramework.EdtTestUtilKt;
|
||||
import com.intellij.testFramework.ParsingTestCase;
|
||||
import com.intellij.testFramework.TestLoggerFactory;
|
||||
import com.intellij.testFramework.fixtures.IdeaTestExecutionPolicy;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.junit.jupiter.api.extension.*;
|
||||
import org.junit.jupiter.api.extension.ExtensionContext.Namespace;
|
||||
import org.junit.jupiter.api.extension.ExtensionContext.Store;
|
||||
import org.junit.runner.Description;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.lang.annotation.Annotation;
|
||||
@@ -81,37 +80,22 @@ public class ParsingTestExtension implements ParameterResolver, AfterTestExecuti
|
||||
@Override
|
||||
public void interceptTestMethod(Invocation<Void> invocation, ReflectiveInvocationContext<Method> invocationContext, ExtensionContext extensionContext) throws Throwable {
|
||||
Throwable[] throwables = new Throwable[1];
|
||||
Description testDescription = Description.createTestDescription(extensionContext.getRequiredTestClass(), getWrapper(extensionContext).getName());
|
||||
|
||||
Runnable runnable = () -> {
|
||||
try {
|
||||
TestLoggerFactory.onTestStarted();
|
||||
invocation.proceed();
|
||||
TestLoggerFactory.onTestFinished(true);
|
||||
} catch (Throwable e) {
|
||||
TestLoggerFactory.onTestFinished(false);
|
||||
throwables[0] = e;
|
||||
}
|
||||
};
|
||||
|
||||
invokeTestRunnable(runnable);
|
||||
try {
|
||||
TestLoggerFactory.onTestStarted();
|
||||
invocation.proceed();
|
||||
TestLoggerFactory.onTestFinished(true, testDescription);
|
||||
} catch (Throwable e) {
|
||||
TestLoggerFactory.onTestFinished(false, testDescription);
|
||||
throwables[0] = e;
|
||||
}
|
||||
|
||||
if (throwables[0] != null) {
|
||||
throw throwables[0];
|
||||
}
|
||||
}
|
||||
|
||||
private static void invokeTestRunnable(@NotNull Runnable runnable) {
|
||||
IdeaTestExecutionPolicy policy = IdeaTestExecutionPolicy.current();
|
||||
if (policy != null && !policy.runInDispatchThread()) {
|
||||
runnable.run();
|
||||
} else {
|
||||
EdtTestUtilKt.runInEdtAndWait(() -> {
|
||||
runnable.run();
|
||||
return null;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
public interface IParsingTestCase {
|
||||
|
||||
MockProjectEx getProject();
|
||||
|
||||
+1
@@ -12,6 +12,7 @@ import org.junit.jupiter.api.extension.ExtendWith
|
||||
abstract class AbstractDocumentationProviderTest : AbstractM68kTest() {
|
||||
|
||||
fun generateDocumentation(myFixture: CodeInsightTestFixture): String? {
|
||||
// FIXME migrate to DocumentationTarget
|
||||
val docElement = DocumentationManager.getInstance(myFixture.project).findTargetElement(myFixture.editor, myFixture.file)
|
||||
val provider = DocumentationManager.getProviderFromElement(docElement)
|
||||
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@ internal class M68kInspectionSuppressorTest : AbstractInspectionTest() {
|
||||
val quickFixPair = highlightInfos[0].quickFixActionRanges[0]
|
||||
val intentionActionDescriptor = quickFixPair.first
|
||||
val element = myFixture.file.findElementAt(quickFixPair.second.startOffset)!!
|
||||
val suppressQuickFix = intentionActionDescriptor.getOptions(element, myFixture.editor)!!
|
||||
val suppressQuickFix = intentionActionDescriptor.getOptions(element, myFixture.editor)
|
||||
.first { it.text == suppressAction }
|
||||
myFixture.launchAction(suppressQuickFix)
|
||||
}
|
||||
|
||||
+2
-2
@@ -103,7 +103,7 @@ internal class M68kReferenceContributorTest : AbstractM68kTest() {
|
||||
assertThat(otherfile.text).isEqualTo("; oh no!")
|
||||
|
||||
myFixture.renameElementAtCaret("foobar.asm")
|
||||
val files = FilenameIndex.getFilesByName(myFixture.project, "foobar.asm", GlobalSearchScope.allScope(myFixture.project))
|
||||
val files = FilenameIndex.getVirtualFilesByName("foobar.asm", GlobalSearchScope.allScope(myFixture.project))
|
||||
assertThat(files).hasSize(1)
|
||||
|
||||
assertThat(file.text).isEqualToIgnoringWhitespace("include \"foobar.asm\"")
|
||||
@@ -123,7 +123,7 @@ internal class M68kReferenceContributorTest : AbstractM68kTest() {
|
||||
assertThat(otherfile.text).isEqualTo("; oh no!")
|
||||
|
||||
myFixture.renameElementAtCaret("foobar.asm")
|
||||
val files = FilenameIndex.getFilesByName(myFixture.project, "foobar.asm", GlobalSearchScope.allScope(myFixture.project))
|
||||
val files = FilenameIndex.getVirtualFilesByName("foobar.asm", GlobalSearchScope.allScope(myFixture.project))
|
||||
assertThat(files).hasSize(1)
|
||||
|
||||
assertThat(file.text).isEqualToIgnoringWhitespace("include \"foobar/foobar.asm\"")
|
||||
|
||||
Reference in New Issue
Block a user