From 26c5a07a6bb55c0163084be86f129ea9bf138bab Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Fri, 25 Feb 2011 16:04:50 +0100 Subject: [PATCH] dummy test --- .../jet/codegen/NamespaceCodegen.java | 9 ++----- .../jet/codegen/NamespaceGenTest.java | 24 +++++++++++++++++++ .../jetbrains/jet/parsing/JetParsingTest.java | 6 +++-- 3 files changed, 30 insertions(+), 9 deletions(-) create mode 100644 idea/tests/org/jetbrains/jet/codegen/NamespaceGenTest.java diff --git a/idea/src/org/jetbrains/jet/codegen/NamespaceCodegen.java b/idea/src/org/jetbrains/jet/codegen/NamespaceCodegen.java index 894d6a47f76..aba2c042338 100644 --- a/idea/src/org/jetbrains/jet/codegen/NamespaceCodegen.java +++ b/idea/src/org/jetbrains/jet/codegen/NamespaceCodegen.java @@ -11,15 +11,10 @@ import org.objectweb.asm.Opcodes; * @author max */ public class NamespaceCodegen { - private final ClassVisitorFactory factory; - - public NamespaceCodegen(ClassVisitorFactory factory) { - this.factory = factory; + public NamespaceCodegen() { } - public void generate(JetNamespace namespace) { - final ClassVisitor v = factory.visitorForClassIn(namespace); - + public void generate(JetNamespace namespace, ClassVisitor v) { final PropertyCodegen propertyCodegen = new PropertyCodegen(v); final FunctionCodegen functionCodegen = new FunctionCodegen(v); v.visit(Opcodes.V1_6, diff --git a/idea/tests/org/jetbrains/jet/codegen/NamespaceGenTest.java b/idea/tests/org/jetbrains/jet/codegen/NamespaceGenTest.java new file mode 100644 index 00000000000..95a0b2c5d22 --- /dev/null +++ b/idea/tests/org/jetbrains/jet/codegen/NamespaceGenTest.java @@ -0,0 +1,24 @@ +package org.jetbrains.jet.codegen; + +import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase; +import org.jetbrains.jet.lang.psi.JetFile; +import org.jetbrains.jet.lang.psi.JetNamespace; +import org.jetbrains.jet.parsing.JetParsingTest; +import org.objectweb.asm.util.TraceClassVisitor; + +import java.io.PrintWriter; +import java.io.StringWriter; + +/** + * @author yole + */ +public class NamespaceGenTest extends LightCodeInsightFixtureTestCase { + public void testPSVM() { + myFixture.configureByFile(JetParsingTest.getTestDataDir() + "/codegen/PSVM.jet"); + JetFile jetFile = (JetFile) myFixture.getFile(); + JetNamespace namespace = jetFile.getRootNamespace(); + NamespaceCodegen codegen = new NamespaceCodegen(); + StringWriter writer = new StringWriter(); + codegen.generate(namespace, new TraceClassVisitor(new PrintWriter(writer))); + } +} diff --git a/idea/tests/org/jetbrains/jet/parsing/JetParsingTest.java b/idea/tests/org/jetbrains/jet/parsing/JetParsingTest.java index bd55adda635..6706c6bf2a9 100644 --- a/idea/tests/org/jetbrains/jet/parsing/JetParsingTest.java +++ b/idea/tests/org/jetbrains/jet/parsing/JetParsingTest.java @@ -4,6 +4,7 @@ package org.jetbrains.jet.parsing; import com.intellij.openapi.application.PathManager; +import com.intellij.openapi.util.io.FileUtil; import com.intellij.psi.PsiErrorElement; import com.intellij.psi.PsiFile; import com.intellij.psi.util.PsiTreeUtil; @@ -40,12 +41,13 @@ public class JetParsingTest extends ParsingTestCase { return getTestDataDir(); } - private static String getTestDataDir() { + public static String getTestDataDir() { return getHomeDirectory() + "/idea/testData"; } private static String getHomeDirectory() { - return new File(PathManager.getResourceRoot(JetParsingTest.class, "/org/jetbrains/jet/parsing/JetParsingTest.class")).getParentFile().getParentFile().getParent(); + File root = new File(PathManager.getResourceRoot(JetParsingTest.class, "/org/jetbrains/jet/parsing/JetParsingTest.class")); + return FileUtil.toSystemIndependentName(root.getParentFile().getParentFile().getParent()); } @Override