summaryrefslogtreecommitdiff
path: root/deps/v8/test/cctest/test-serialize.cc
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2009-12-05 15:27:56 +0100
committerRyan Dahl <ry@tinyclouds.org>2009-12-05 15:27:56 +0100
commitc8b6ef248e5fc32df62041ec83463923bc8bdc68 (patch)
tree9012b1d0b0f9c380f6c6aa1b8b43dde44532e19e /deps/v8/test/cctest/test-serialize.cc
parentc5d82380f46ed0c992ff56a9e9ddfe6ab2540e62 (diff)
downloadnode-c8b6ef248e5fc32df62041ec83463923bc8bdc68.tar.gz
upgrade v8 to 2.0.3
Diffstat (limited to 'deps/v8/test/cctest/test-serialize.cc')
-rw-r--r--deps/v8/test/cctest/test-serialize.cc37
1 files changed, 36 insertions, 1 deletions
diff --git a/deps/v8/test/cctest/test-serialize.cc b/deps/v8/test/cctest/test-serialize.cc
index 9ed487450..8f4441ac7 100644
--- a/deps/v8/test/cctest/test-serialize.cc
+++ b/deps/v8/test/cctest/test-serialize.cc
@@ -192,6 +192,15 @@ TEST(Serialize) {
}
+// Test that heap serialization is non-destructive.
+TEST(SerializeTwice) {
+ Serializer::Enable();
+ v8::V8::Initialize();
+ Serialize();
+ Serialize();
+}
+
+
//----------------------------------------------------------------------------
// Tests that the heap can be deserialized.
@@ -218,7 +227,17 @@ DEPENDENT_TEST(Deserialize, Serialize) {
Deserialize();
- fflush(stdout);
+ v8::Persistent<v8::Context> env = v8::Context::New();
+ env->Enter();
+
+ SanityCheck();
+}
+
+
+DEPENDENT_TEST(DeserializeFromSecondSerialization, SerializeTwice) {
+ v8::HandleScope scope;
+
+ Deserialize();
v8::Persistent<v8::Context> env = v8::Context::New();
env->Enter();
@@ -242,6 +261,22 @@ DEPENDENT_TEST(DeserializeAndRunScript2, Serialize) {
}
+DEPENDENT_TEST(DeserializeFromSecondSerializationAndRunScript2,
+ SerializeTwice) {
+ v8::HandleScope scope;
+
+ Deserialize();
+
+ v8::Persistent<v8::Context> env = v8::Context::New();
+ env->Enter();
+
+ const char* c_source = "\"1234\".length";
+ v8::Local<v8::String> source = v8::String::New(c_source);
+ v8::Local<v8::Script> script = v8::Script::Compile(source);
+ CHECK_EQ(4, script->Run()->Int32Value());
+}
+
+
TEST(TestThatAlwaysSucceeds) {
}