Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(588)

Unified Diff: test/cctest/test-api.cc

Issue 345046: Made rethrow test not depend on stack overflow behavior. (Closed)
Patch Set: Renamed test Created 11 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/cctest/test-api.cc
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
index 514a22fcf31fdf3fb93c3f147315535326d4ade6..53df072977cf8a51125768efd0f41cd00e74804e 100644
--- a/test/cctest/test-api.cc
+++ b/test/cctest/test-api.cc
@@ -8674,17 +8674,29 @@ static v8::Handle<Value> SpaghettiIncident(const v8::Arguments& args) {
}
-// Test that a stack overflow can be propagated down through a spaghetti
+// Test that an exception can be propagated down through a spaghetti
// stack using ReThrow.
-THREADED_TEST(SpaghettiStackOverflow) {
+THREADED_TEST(SpaghettiStackReThrow) {
v8::HandleScope scope;
LocalContext context;
context->Global()->Set(
v8::String::New("s"),
v8::FunctionTemplate::New(SpaghettiIncident)->GetFunction());
v8::TryCatch try_catch;
- CompileRun("var o = {toString: function () {return s(o);}}; s(o);");
+ CompileRun(
+ "var i = 0;"
+ "var o = {"
+ " toString: function () {"
+ " if (i == 10) {"
+ " throw 'Hey!';"
+ " } else {"
+ " i++;"
+ " return s(o);"
+ " }"
+ " }"
+ "};"
+ "s(o);");
CHECK(try_catch.HasCaught());
v8::String::Utf8Value value(try_catch.Exception());
- CHECK_NE(0, strstr(*value, "RangeError"));
+ CHECK_EQ(0, strcmp(*value, "Hey!"));
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698