Revision: 5792
Author: [email protected]
Date: Fri Jul 24 16:29:28 2009
Log: Fix StackTraceCreatorTest in hosted mode.

Patch by: bobv
Review by: rjrjr (TBR)
http://code.google.com/p/google-web-toolkit/source/detail?r=5792

Modified:
  /trunk/user/test/com/google/gwt/core/client/impl/StackTraceCreatorTest.java

=======================================
---  
/trunk/user/test/com/google/gwt/core/client/impl/StackTraceCreatorTest.java     
 
Thu Jul 23 13:45:16 2009
+++  
/trunk/user/test/com/google/gwt/core/client/impl/StackTraceCreatorTest.java     
 
Fri Jul 24 16:29:28 2009
@@ -17,6 +17,7 @@

  import com.google.gwt.core.client.GWT;
  import com.google.gwt.core.client.JavaScriptException;
+import com.google.gwt.core.client.JavaScriptObject;
  import com.google.gwt.core.client.JsArrayString;
  import com.google.gwt.junit.client.GWTTestCase;

@@ -26,7 +27,7 @@
   */
  public class StackTraceCreatorTest extends GWTTestCase {
    public static void testJavaScriptException() {
-    JsArrayString start = StackTraceCreator.createStackTrace();
+    JsArrayString start = sample();
      Throwable t = null;
      try {
        throwNative();
@@ -54,7 +55,7 @@

      checkStack(myName, t);

-    JsArrayString end = StackTraceCreator.createStackTrace();
+    JsArrayString end = sample();
      assertEquals(start, end);
    }

@@ -63,22 +64,22 @@
     */
    public static void testReentrantCalls() {
      if (!GWT.isScript()) {
-      // StackTraceCreator.createStackTrace() is useless in hosted mode
+      // sample is useless in hosted mode
        return;
      }

-    JsArrayString start = StackTraceCreator.createStackTrace();
+    JsArrayString start = sample();

      JsArrayString stack = countDown(5);
      assertNotNull(stack);
      assertTrue(stack.length() > 0);

-    JsArrayString end = StackTraceCreator.createStackTrace();
+    JsArrayString end = sample();
      assertEquals(start, end);
    }

    public static void testStackTraces() {
-    JsArrayString start = StackTraceCreator.createStackTrace();
+    JsArrayString start = sample();

      Throwable t;
      try {
@@ -96,9 +97,16 @@

      checkStack(myName, t);

-    JsArrayString end = StackTraceCreator.createStackTrace();
+    JsArrayString end = sample();
      assertEquals(start, end);
    }
+
+  private static void assertEquals(JsArrayString start, JsArrayString end)  
{
+    assertEquals("length", start.length(), end.length());
+    for (int i = 0, j = start.length(); i < j; i++) {
+      assertEquals("frame " + i, start.get(i), end.get(i));
+    }
+  }

    private static void checkStack(String myName, Throwable t) {
      assertNotNull("myName", myName);
@@ -129,19 +137,20 @@
      assertTrue("Did not find " + myName + " in the stack " + observedStack,
          found);
    }
-
-  private static void assertEquals(JsArrayString start, JsArrayString end)  
{
-    assertEquals("length", start.length(), end.length());
-    for (int i = 0, j = start.length(); i < j; i++) {
-      assertEquals("frame " + i, start.get(i), end.get(i));
-    }
-  }

    private static JsArrayString countDown(int count) {
      if (count > 0) {
        return countDown(count - 1);
      } else {
+      return sample();
+    }
+  }
+
+  private static JsArrayString sample() {
+    if (GWT.isScript()) {
        return StackTraceCreator.createStackTrace();
+    } else {
+      return JavaScriptObject.createArray().cast();
      }
    }



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

Reply via email to