Author: [email protected]
Date: Mon Jul  6 15:14:56 2009
New Revision: 5677

Added:
     
changes/jat/ihm/dev/core/test/com/google/gwt/core/ext/typeinfo/HookableTypeOracle.java
    
(contents, props changed)
Removed:
     
changes/jat/ihm/dev/core/test/com/google/gwt/core/ext/typeinfo/TypeOracleMocks.java
Modified:
     
changes/jat/ihm/dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java
     
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
     
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/asm/ResolveGenericsTest.java
     
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/impl/JavaResourceBase.java

Log:
Remove my TypeOracle mocking code and extend what was already there to do
what I needed.


Modified:  
changes/jat/ihm/dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java
==============================================================================
---  
changes/jat/ihm/dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java
    
(original)
+++  
changes/jat/ihm/dev/core/src/com/google/gwt/dev/javac/CompilationUnitInvalidator.java
    
Mon Jul  6 15:14:56 2009
@@ -208,7 +208,7 @@
              validBinaryTypeNames);
        }
        if (unit.isCompiled()) {
-        state.jsoState.processUnit(typeOracle, unit);
+//        state.jsoState.processUnit(typeOracle, unit);
  //        JSORestrictionsChecker.check(state.jsoState, unit, typeOracle);
        }
      }

Added:  
changes/jat/ihm/dev/core/test/com/google/gwt/core/ext/typeinfo/HookableTypeOracle.java
==============================================================================
--- (empty file)
+++  
changes/jat/ihm/dev/core/test/com/google/gwt/core/ext/typeinfo/HookableTypeOracle.java
   
Mon Jul  6 15:14:56 2009
@@ -0,0 +1,13 @@
+package com.google.gwt.core.ext.typeinfo;
+
+/**
+ * A minimal TypeOracle mock that exposes the addNewType hook to  
subclasses.
+ */
+public class HookableTypeOracle extends TypeOracle {
+
+  // Increases visibility so tests in other packages can hook this.
+  @Override
+  protected void addNewType(JRealClassType newType) {
+    super.addNewType(newType);
+  }
+}
\ No newline at end of file

Modified:  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
==============================================================================
---  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
       
(original)
+++  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
       
Mon Jul  6 15:14:56 2009
@@ -31,6 +31,13 @@
   */
  public class TypeOracleTestingUtils {

+  public static void buildStandardTypeOracleWith(TypeOracleMediator  
mediator,
+      TreeLogger logger, CompilationUnit... extraUnits) {
+    Set<CompilationUnit> extraUnitSet = new HashSet<CompilationUnit>();
+    Collections.addAll(extraUnitSet, extraUnits);
+    buildStandardTypeOracleWith(mediator, logger, extraUnitSet);
+  }
+
    public static TypeOracle buildStandardTypeOracleWith(TreeLogger logger,
        CompilationUnit... extraUnits) {
      Set<CompilationUnit> extraUnitSet = new HashSet<CompilationUnit>();
@@ -38,6 +45,16 @@
      return buildStandardTypeOracleWith(logger, extraUnitSet);
    }

+  public static void buildStandardTypeOracleWith(TypeOracleMediator  
mediator,
+      TreeLogger logger, Set<CompilationUnit> extraUnits) {
+    Set<CompilationUnit> unitSet = new HashSet<CompilationUnit>();
+    addStandardCups(unitSet);
+    for (CompilationUnit extraUnit : extraUnits) {
+      unitSet.add(extraUnit);
+    }
+    buildTypeOracle(mediator, logger, unitSet);
+  }
+
    public static TypeOracle buildStandardTypeOracleWith(TreeLogger logger,
        Set<CompilationUnit> extraUnits) {
      Set<CompilationUnit> unitSet = new HashSet<CompilationUnit>();
@@ -50,6 +67,13 @@

    public static TypeOracle buildTypeOracle(TreeLogger logger,
        Set<CompilationUnit> units) {
+    TypeOracleMediator mediator = new TypeOracleMediator();
+    buildTypeOracle(mediator, logger, units);
+    return mediator.getTypeOracle();
+  }
+
+  public static void buildTypeOracle(TypeOracleMediator mediator,
+      TreeLogger logger, Set<CompilationUnit> units) {
      Set<String> validBinaryTypeNames = new HashSet<String>();
      for (CompilationUnit unit : units) {
        Set<CompiledClass> compiledClasses = unit.getCompiledClasses();
@@ -66,9 +90,7 @@
      if (CompilationUnitInvalidator.invalidateUnitsWithErrors(logger,  
units)) {
        CompilationUnitInvalidator.invalidateUnitsWithInvalidRefs(logger,  
units);
      }
-    TypeOracleMediator mediator = new TypeOracleMediator();
      mediator.refresh(logger, units);
-    return mediator.getTypeOracle();
    }

    /**

Modified:  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/asm/ResolveGenericsTest.java
==============================================================================
---  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/asm/ResolveGenericsTest.java
      
(original)
+++  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/asm/ResolveGenericsTest.java
      
Mon Jul  6 15:14:56 2009
@@ -16,6 +16,7 @@
  package com.google.gwt.dev.javac.asm;

  import com.google.gwt.core.ext.TreeLogger;
+import com.google.gwt.core.ext.typeinfo.HookableTypeOracle;
  import com.google.gwt.core.ext.typeinfo.JClassType;
  import com.google.gwt.core.ext.typeinfo.JGenericType;
  import com.google.gwt.core.ext.typeinfo.JMethod;
@@ -27,16 +28,15 @@
  import com.google.gwt.core.ext.typeinfo.JTypeParameter;
  import com.google.gwt.core.ext.typeinfo.JWildcardType;
  import com.google.gwt.core.ext.typeinfo.TypeOracle;
-import com.google.gwt.core.ext.typeinfo.TypeOracleMocks;
  import com.google.gwt.core.ext.typeinfo.JWildcardType.BoundType;
-import com.google.gwt.core.ext.typeinfo.TypeOracleMocks.BareTypeOracle;
  import com.google.gwt.dev.asm.Opcodes;
  import com.google.gwt.dev.asm.Type;
  import com.google.gwt.dev.asm.signature.SignatureReader;
+import com.google.gwt.dev.javac.CompilationUnit;
  import com.google.gwt.dev.javac.TypeOracleMediator;
+import com.google.gwt.dev.javac.TypeOracleTestingUtils;
  import com.google.gwt.dev.javac.TypeParameterLookup;
  import com.google.gwt.dev.javac.asm.CollectClassData.ClassType;
-import com.google.gwt.dev.util.log.AbstractTreeLogger;

  import java.lang.annotation.Annotation;
  import java.lang.reflect.Method;
@@ -52,25 +52,23 @@
   */
  public class ResolveGenericsTest extends AsmTestCase {

-  public static class FailErrorTreeLogger extends AbstractTreeLogger {
+  public static class FailErrorTreeLogger extends TreeLogger {
      @Override
-    protected AbstractTreeLogger doBranch() {
-      // TODO(jat): Auto-generated method stub
-      return null;
-    }
-
-    @Override
-    protected void doCommitBranch(AbstractTreeLogger childBeingCommitted,
-        com.google.gwt.core.ext.TreeLogger.Type type, String msg,
-        Throwable caught, HelpInfo helpInfo) {
+    public TreeLogger branch(com.google.gwt.core.ext.TreeLogger.Type type,
+        String msg, Throwable caught, HelpInfo helpInfo) {
        if (type == TreeLogger.ERROR) {
          fail(msg);
        }
+      return this;
+    }
+
+    @Override
+    public boolean isLoggable(com.google.gwt.core.ext.TreeLogger.Type  
type) {
+      return true;
      }

      @Override
-    protected void doLog(int indexOfLogEntryWithinParentLogger,
-        com.google.gwt.core.ext.TreeLogger.Type type, String msg,
+    public void log(com.google.gwt.core.ext.TreeLogger.Type type, String  
msg,
          Throwable caught, HelpInfo helpInfo) {
        if (type == TreeLogger.ERROR) {
          fail(msg);
@@ -96,7 +94,7 @@
      }
    }

-  public static class ResolverMockTypeOracle extends BareTypeOracle {
+  public static class ResolverMockTypeOracle extends HookableTypeOracle {

      private Map<String, JRealClassType> binaryMapper;

@@ -151,7 +149,6 @@
    private static final String OUTER2_METHOD_SIG
         
= "(Lcom/google/gwt/dev/javac/asm/TestHandler1<Ljava/lang/String;>;)V";

-  private TypeOracleMocks oracleMocks;
    private ResolverMockTypeOracle oracle = new ResolverMockTypeOracle();

    @SuppressWarnings("unused")
@@ -170,10 +167,10 @@
    @SuppressWarnings("unused")
    private JRealClassType testType;

-  @Override
-  public void setUp() {
-    oracleMocks = new TypeOracleMocks(oracle, failTreeLogger);
-    oracleMocks.addJreMocks();
+  public ResolveGenericsTest() {
+    TypeOracleMediator mediator = new TypeOracleMediator(oracle);
+    TypeOracleTestingUtils.buildStandardTypeOracleWith(mediator,
+        failTreeLogger);
      testHandler = createUnresolvedClass(TestHandler.class, null);
      testHandler1 = createUnresolvedClass(TestHandler1.class, null);
      testOuter0 = createUnresolvedClass(TestOuter0.class, null);

Modified:  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/impl/JavaResourceBase.java
==============================================================================
---  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/impl/JavaResourceBase.java
        
(original)
+++  
changes/jat/ihm/dev/core/test/com/google/gwt/dev/javac/impl/JavaResourceBase.java
        
Mon Jul  6 15:14:56 2009
@@ -135,10 +135,21 @@
        return code;
      }
    };
+  public static final MockJavaResource THROWABLE = new MockJavaResource(
+      "java.lang.Throwable") {
+    @Override
+    protected CharSequence getContent() {
+      StringBuffer code = new StringBuffer();
+      code.append("package java.lang;\n");
+      code.append("public class Throwable {\n");
+      code.append("}\n");
+      return code;
+    }
+  };

    public static MockJavaResource[] getStandardResources() {
      return new MockJavaResource[] {
          ANNOTATION, CLASS, JAVASCRIPTOBJECT, MAP, OBJECT, SERIALIZABLE,  
STRING,
-        SUPPRESS_WARNINGS};
+        SUPPRESS_WARNINGS, THROWABLE};
    }
  }

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to