Author: olehougaard
Date: Thu Sep 11 05:33:31 2008
New Revision: 277

Modified:
    branches/bleeding_edge/test/cctest/test-api.cc
    branches/bleeding_edge/test/mjsunit/debug-script.js

Log:
Enabling a few tests when using snapshots.

Some of the tests that were disabled when using snapshot has been modified  
and reenabled.
Review URL: http://codereview.chromium.org/1937

Modified: branches/bleeding_edge/test/cctest/test-api.cc
==============================================================================
--- branches/bleeding_edge/test/cctest/test-api.cc      (original)
+++ branches/bleeding_edge/test/cctest/test-api.cc      Thu Sep 11 05:33:31 2008
@@ -4697,7 +4697,7 @@
  }


-static void EnsureNoSurvivingGlobalObjects() {
+static int GetSurvivingGlobalObjectsCount() {
    int count = 0;
    v8::internal::Heap::CollectAllGarbage();
    v8::internal::HeapIterator it;
@@ -4710,38 +4710,34 @@
  #ifdef DEBUG
    if (count > 0) v8::internal::Heap::TracePathToGlobal();
  #endif
-  CHECK_EQ(0, count);
+  return count;
  }


-// This test assumes that there are zero global objects when the
-// test starts.  This is not going to be true if we are using the
-// API fuzzer.
  TEST(DontLeakGlobalObjects) {
    // Regression test for issues 1139850 and 1174891.

-  v8::internal::V8::Initialize(NULL);
-  if (v8::internal::Snapshot::IsEnabled()) return;
+  v8::V8::Initialize();

-  EnsureNoSurvivingGlobalObjects();
+  int count = GetSurvivingGlobalObjectsCount();

    for (int i = 0; i < 5; i++) {
      { v8::HandleScope scope;
        LocalContext context;
      }
-    EnsureNoSurvivingGlobalObjects();
+    CHECK_EQ(count, GetSurvivingGlobalObjectsCount());

      { v8::HandleScope scope;
        LocalContext context;
        v8_compile("Date")->Run();
      }
-    EnsureNoSurvivingGlobalObjects();
+    CHECK_EQ(count, GetSurvivingGlobalObjectsCount());

      { v8::HandleScope scope;
        LocalContext context;
        v8_compile("/aaa/")->Run();
      }
-    EnsureNoSurvivingGlobalObjects();
+    CHECK_EQ(count, GetSurvivingGlobalObjectsCount());

      { v8::HandleScope scope;
        const char* extension_list[] = { "v8/gc" };
@@ -4749,7 +4745,7 @@
        LocalContext context(&extensions);
        v8_compile("gc();")->Run();
      }
-    EnsureNoSurvivingGlobalObjects();
+    CHECK_EQ(count, GetSurvivingGlobalObjectsCount());

      { v8::HandleScope scope;
        const char* extension_list[] = { "v8/print" };
@@ -4757,14 +4753,13 @@
        LocalContext context(&extensions);
        v8_compile("print('hest');")->Run();
      }
-    EnsureNoSurvivingGlobalObjects();
+    CHECK_EQ(count, GetSurvivingGlobalObjectsCount());
    }
  }


  THREADED_TEST(CheckForCrossContextObjectLiterals) {
-  v8::internal::V8::Initialize(NULL);
-  if (v8::internal::Snapshot::IsEnabled()) return;
+  v8::V8::Initialize();

    const int nof = 2;
    const char* sources[nof] = {

Modified: branches/bleeding_edge/test/mjsunit/debug-script.js
==============================================================================
--- branches/bleeding_edge/test/mjsunit/debug-script.js (original)
+++ branches/bleeding_edge/test/mjsunit/debug-script.js Thu Sep 11 05:33:31  
2008
@@ -55,6 +55,9 @@

  // This has to be updated if the number of native scripts change.
  assertEquals(12, native_count);
+// If no snapshot is used, only the 'gc' extension is loaded.
+// If snapshot is used, all extensions are cached in the snapshot.
+assertTrue(extension_count == 1 || extension_count == 5);
  assertEquals(2, normal_count);  // This script and mjsunit.js.

  // Test a builtins script.

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to