mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[tests] uses production ASM flags computing methods in instrumentation tests
This commit is contained in:
+3
-1
@@ -4,6 +4,7 @@ package com.intellij.java.compiler.notNullVerification;
|
||||
import com.intellij.JavaTestUtil;
|
||||
import com.intellij.codeInsight.AnnotationUtil;
|
||||
import com.intellij.compiler.instrumentation.FailSafeClassReader;
|
||||
import com.intellij.compiler.instrumentation.InstrumenterClassWriter;
|
||||
import com.intellij.compiler.notNullVerification.NotNullVerifyingInstrumenter;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.io.IoTestUtil;
|
||||
@@ -411,7 +412,8 @@ public abstract class NotNullVerifyingInstrumenterTest {
|
||||
Class mainClass = null;
|
||||
for (File file: files) {
|
||||
FailSafeClassReader reader = new FailSafeClassReader(FileUtil.loadFileBytes(file));
|
||||
ClassWriter writer = new ClassWriter(reader, ClassWriter.COMPUTE_FRAMES);
|
||||
int flags = InstrumenterClassWriter.getAsmClassWriterFlags(InstrumenterClassWriter.getClassFileVersion(reader));
|
||||
ClassWriter writer = new ClassWriter(reader, flags);
|
||||
modified |= NotNullVerifyingInstrumenter.processClassFile(reader, writer, notNullAnnotations);
|
||||
String className = FileUtil.getNameWithoutExtension(file.getName());
|
||||
Class aClass = classLoader.doDefineClass(className, writer.toByteArray());
|
||||
|
||||
+3
-2
@@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.jetbrains.jps.intellilang.instrumentation
|
||||
|
||||
import com.intellij.compiler.instrumentation.FailSafeClassReader
|
||||
@@ -156,7 +156,8 @@ class PatternInstrumenterTest {
|
||||
val loader = MyClassLoader()
|
||||
classesDir.listFiles().sorted().forEach {
|
||||
val reader = FailSafeClassReader(it.readBytes())
|
||||
val writer = InstrumenterClassWriter(reader, ClassWriter.COMPUTE_FRAMES, finder)
|
||||
val flags = InstrumenterClassWriter.getAsmClassWriterFlags(InstrumenterClassWriter.getClassFileVersion(reader))
|
||||
val writer = InstrumenterClassWriter(reader, flags, finder)
|
||||
modified = modified or PatternValidatorBuilder.processClassFile(reader, writer, finder, Pattern::class.java.name, type)
|
||||
loader.createClass(it.nameWithoutExtension, writer.toByteArray())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user