Commit a02df7e1 authored by titzer's avatar titzer Committed by Commit bot

Make FunctionTester::Compile() private.

R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1692223002

Cr-Commit-Position: refs/heads/master@{#33954}
parent 14a1dec8
......@@ -162,8 +162,19 @@ class FunctionTester : public InitializedHandleScope {
Handle<Object> false_value() { return isolate->factory()->false_value(); }
static Handle<JSFunction> ForMachineGraph(Graph* graph, int param_count) {
JSFunction* p = NULL;
{ // because of the implicit handle scope of FunctionTester.
FunctionTester f(graph, param_count);
p = *f.function;
}
return Handle<JSFunction>(p); // allocated in outer handle scope.
}
private:
uint32_t flags_;
Handle<JSFunction> Compile(Handle<JSFunction> function) {
// TODO(titzer): make this method private.
Zone zone;
ParseInfo parse_info(&zone, function);
CompilationInfo info(&parse_info);
......@@ -192,18 +203,6 @@ class FunctionTester : public InitializedHandleScope {
return function;
}
static Handle<JSFunction> ForMachineGraph(Graph* graph, int param_count) {
JSFunction* p = NULL;
{ // because of the implicit handle scope of FunctionTester.
FunctionTester f(graph, param_count);
p = *f.function;
}
return Handle<JSFunction>(p); // allocated in outer handle scope.
}
private:
uint32_t flags_;
std::string BuildFunction(int param_count) {
std::string function_string = "(function(";
if (param_count > 0) {
......
......@@ -21,37 +21,36 @@ TEST(SimpleCall) {
TEST(SimpleCall2) {
FunctionTester T("(function(foo,a) { return foo(a); })");
Handle<JSFunction> foo = T.NewFunction("(function(a) { return a; })");
T.Compile(foo);
FunctionTester U("(function(a) { return a; })");
T.CheckCall(T.Val(3), foo, T.Val(3));
T.CheckCall(T.Val(3.1), foo, T.Val(3.1));
T.CheckCall(foo, foo, foo);
T.CheckCall(T.Val("Abba"), foo, T.Val("Abba"));
T.CheckCall(T.Val(3), U.function, T.Val(3));
T.CheckCall(T.Val(3.1), U.function, T.Val(3.1));
T.CheckCall(U.function, U.function, U.function);
T.CheckCall(T.Val("Abba"), U.function, T.Val("Abba"));
}
TEST(ConstCall) {
FunctionTester T("(function(foo,a) { return foo(a,3); })");
Handle<JSFunction> foo = T.NewFunction("(function(a,b) { return a + b; })");
T.Compile(foo);
FunctionTester U("(function(a,b) { return a + b; })");
T.CheckCall(T.Val(6), foo, T.Val(3));
T.CheckCall(T.Val(6.1), foo, T.Val(3.1));
T.CheckCall(T.Val("function (a,b) { return a + b; }3"), foo, foo);
T.CheckCall(T.Val("Abba3"), foo, T.Val("Abba"));
T.CheckCall(T.Val(6), U.function, T.Val(3));
T.CheckCall(T.Val(6.1), U.function, T.Val(3.1));
T.CheckCall(T.Val("function (a,b) { return a + b; }3"), U.function,
U.function);
T.CheckCall(T.Val("Abba3"), U.function, T.Val("Abba"));
}
TEST(ConstCall2) {
FunctionTester T("(function(foo,a) { return foo(a,\"3\"); })");
Handle<JSFunction> foo = T.NewFunction("(function(a,b) { return a + b; })");
T.Compile(foo);
FunctionTester U("(function(a,b) { return a + b; })");
T.CheckCall(T.Val("33"), foo, T.Val(3));
T.CheckCall(T.Val("3.13"), foo, T.Val(3.1));
T.CheckCall(T.Val("function (a,b) { return a + b; }3"), foo, foo);
T.CheckCall(T.Val("Abba3"), foo, T.Val("Abba"));
T.CheckCall(T.Val("33"), U.function, T.Val(3));
T.CheckCall(T.Val("3.13"), U.function, T.Val(3.1));
T.CheckCall(T.Val("function (a,b) { return a + b; }3"), U.function,
U.function);
T.CheckCall(T.Val("Abba3"), U.function, T.Val("Abba"));
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment