Index: src/test/org/codehaus/groovy/ast/VariableExpressionTest.java
===================================================================
--- src/test/org/codehaus/groovy/ast/VariableExpressionTest.java	(revision 0)
+++ src/test/org/codehaus/groovy/ast/VariableExpressionTest.java	(revision 687)
@@ -0,0 +1,71 @@
+/**
+ * 
+ */
+package org.codehaus.groovy.ast;
+
+import junit.framework.TestCase;
+
+import org.codehaus.groovy.ast.expr.VariableExpression;
+import org.objectweb.asm.Opcodes;
+
+/**
+ * Tests the VariableExpressionNode
+ * 
+ * @author <a href="mailto:martin.kempf@gmail.com">Martin Kempf</a>
+ *
+ */
+public class VariableExpressionTest extends TestCase {
+
+    public void testPrimitiveOriginType() {
+    	VariableExpression boolExpression = new VariableExpression("fo",ClassHelper.boolean_TYPE);
+    	VariableExpression intExpression = new VariableExpression("foo", ClassHelper.int_TYPE);
+        assertEquals(boolExpression.getOriginType().getName(),"boolean");
+        assertEquals(intExpression.getOriginType().getName(),"int");
+    }
+    
+    public void testNonPrimitiveOriginType() {
+    	VariableExpression boolExpression = new VariableExpression("foo",ClassHelper.Boolean_TYPE);
+    	VariableExpression intExpression = new VariableExpression("foo", ClassHelper.Integer_TYPE);
+        assertEquals(boolExpression.getOriginType().getName(),"java.lang.Boolean");
+        assertEquals(intExpression.getOriginType().getName(),"java.lang.Integer");    	
+    }
+    
+    public void testPrimitiveOriginTypeConstructorVariableExpression() {
+    	VariableExpression boolExpression = new VariableExpression("foo",ClassHelper.boolean_TYPE);
+    	VariableExpression intExpression = new VariableExpression("foo", ClassHelper.int_TYPE);
+    	VariableExpression newBoolExpression = new VariableExpression(boolExpression);
+    	VariableExpression newIntExpression = new VariableExpression(intExpression);
+        assertEquals(newBoolExpression.getOriginType().getName(),"boolean");
+        assertEquals(newIntExpression.getOriginType().getName(),"int"); 
+    }
+    
+    public void testPrimitiveOriginTypeConstructorParameter() {
+    	Parameter boolParameter = new Parameter(ClassHelper.boolean_TYPE,"foo");
+    	Parameter intParameter = new Parameter(ClassHelper.int_TYPE,"foo");
+    	VariableExpression newBoolExpression = new VariableExpression(boolParameter);
+    	VariableExpression newIntExpression = new VariableExpression(intParameter);
+        assertEquals(newBoolExpression.getOriginType().getName(),"boolean");
+        assertEquals(newIntExpression.getOriginType().getName(),"int"); 
+    }
+    
+    public void testPrimitiveOriginTypeConstructorDynVariable() {
+    	DynamicVariable dynVariable = new DynamicVariable("foo",false);
+    	VariableExpression newBoolExpression = new VariableExpression(dynVariable);
+        assertEquals(dynVariable.getOriginType().getName(),"java.lang.Object"); 
+    }
+    
+    public void testIsDynamicTypedExplizitObject() {
+    	VariableExpression intExpression = new VariableExpression("foo", new ClassNode(Object.class));
+    	assertFalse(intExpression.isDynamicTyped());
+    }
+    
+    public void testIsDynamicTyped_DYNMAMIC_TYPE() {
+    	VariableExpression intExpression = new VariableExpression("foo", ClassHelper.DYNAMIC_TYPE);
+    	assertTrue(intExpression.isDynamicTyped());
+    }
+    
+    public void testIsDynamicTyped_DynamicVariable() {
+    	VariableExpression intExpression = new VariableExpression(new DynamicVariable("foo",false));
+    	assertTrue(intExpression.isDynamicTyped());
+    }
+}

Index: src/test/org/codehaus/groovy/ast/MethodNodeTest.java
===================================================================
--- src/test/org/codehaus/groovy/ast/MethodNodeTest.java	(revision 0)
+++ src/test/org/codehaus/groovy/ast/MethodNodeTest.java	(revision 687)
@@ -0,0 +1,38 @@
+package org.codehaus.groovy.ast;
+
+import org.codehaus.groovy.ast.expr.VariableExpression;
+import org.codehaus.groovy.ast.stmt.BlockStatement;
+import org.objectweb.asm.Opcodes;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests the VariableExpressionNode
+ * 
+ * @author <a href="mailto:martin.kempf@gmail.com">Martin Kempf</a>
+ *
+ */
+
+public class MethodNodeTest extends TestCase implements Opcodes {
+
+	public void testIsDynamicReturnTypeExplizitObject() {
+    	MethodNode methodNode = new MethodNode("foo", ACC_PUBLIC, new ClassNode(Object.class), Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, new BlockStatement());
+        assertFalse(methodNode.isDynamicReturnType());
+    }
+	
+	public void testIsDynamicReturnTypeDYNAMIC_TYPE() {
+    	MethodNode methodNode = new MethodNode("foo", ACC_PUBLIC, ClassHelper.DYNAMIC_TYPE, Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, new BlockStatement());
+        assertTrue(methodNode.isDynamicReturnType());
+    }
+	
+	public void testIsDynamicReturnTypeVoid() {
+    	MethodNode methodNode = new MethodNode("foo", ACC_PUBLIC, ClassHelper.VOID_TYPE, Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, new BlockStatement());
+        assertFalse(methodNode.isDynamicReturnType());
+    }
+	
+	public void testIsDynamicReturnTypNull() {
+    	MethodNode methodNode = new MethodNode("foo", ACC_PUBLIC, null, Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, new BlockStatement());
+        assertFalse(methodNode.isDynamicReturnType());
+        assertNotNull(methodNode.getReturnType());
+    }
+}

Index: src/test/JavaSourceCodehausPackagesSuite.java
===================================================================
--- src/test/JavaSourceCodehausPackagesSuite.java	(revision 675)
+++ src/test/JavaSourceCodehausPackagesSuite.java	(revision 687)
@@ -8,7 +8,9 @@
 import org.codehaus.groovy.antlr.SourceBufferTest;
 import org.codehaus.groovy.antlr.treewalker.*;
 import org.codehaus.groovy.ast.ClassNodeTest;
+import org.codehaus.groovy.ast.MethodNodeTest;
 import org.codehaus.groovy.ast.ModuleNodeTest;
+import org.codehaus.groovy.ast.VariableExpressionTest;
 import org.codehaus.groovy.bsf.BSFTest;
 import org.codehaus.groovy.bsf.CacheBSFTest;
 import org.codehaus.groovy.classgen.*;
@@ -84,6 +86,8 @@
         suite.addTestSuite(VerifierCodeVisitorTest.class);
         suite.addTestSuite(JdkDynamicProxyTest.class);
         suite.addTestSuite(CompilerConfigurationTest.class);
+        suite.addTestSuite(MethodNodeTest.class);
+        suite.addTestSuite(VariableExpressionTest.class);
         return suite;
     }
 }
