generate plus

This commit is contained in:
Dmitry Jemerov
2011-03-24 18:34:37 +01:00
parent 3e2b41a225
commit d05066f8f5
5 changed files with 52 additions and 13 deletions
@@ -60,7 +60,7 @@ public class ExpressionGenTest extends LightDaemonAnalyzerTestCase {
JetProperty p = PsiTreeUtil.getParentOfType(getFile().findElementAt(0), JetProperty.class);
TraceMethodVisitor trace = new TraceMethodVisitor();
p.getInitializer().accept(new ExpressionCodegen(trace, null, new FrameMap()));
p.getInitializer().accept(new ExpressionCodegen(trace, null, null, new FrameMap()));
StringWriter out = new StringWriter();
trace.print(new PrintWriter(out));
@@ -96,11 +96,21 @@ public class NamespaceGenTest extends LightCodeInsightFixtureTestCase {
public void testHelloWorld() throws Exception {
loadFile("helloWorld.jet");
final String text = generateToText();
System.out.println(text);
System.out.println(generateToText());
final Class aClass = generateToClass();
final Method main = firstMethod(aClass); // assert that it can be verified
}
public void testPlus() throws Exception {
loadFile("plus.jet");
System.out.println(generateToText());
final Class aClass = generateToClass();
final Method main = firstMethod(aClass);
final int returnValue = (Integer) main.invoke(null, 37, 5);
assertEquals(42, returnValue);
}
private void loadFile(final String name) {
@@ -115,6 +125,7 @@ public class NamespaceGenTest extends LightCodeInsightFixtureTestCase {
new TraceClassVisitor(new PrintWriter(writer)),
namespace.getFQName());
codegen.generate(namespace);
codegen.done();
return writer.toString();
}