OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ | 5 #ifndef V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ |
6 #define V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ | 6 #define V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 #include "test/cctest/cctest.h" | 9 #include "test/cctest/cctest.h" |
10 | 10 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
62 | 62 |
63 void CheckThrows(Handle<Object> a, Handle<Object> b) { | 63 void CheckThrows(Handle<Object> a, Handle<Object> b) { |
64 TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); | 64 TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); |
65 MaybeHandle<Object> no_result = Call(a, b); | 65 MaybeHandle<Object> no_result = Call(a, b); |
66 CHECK(isolate->has_pending_exception()); | 66 CHECK(isolate->has_pending_exception()); |
67 CHECK(try_catch.HasCaught()); | 67 CHECK(try_catch.HasCaught()); |
68 CHECK(no_result.is_null()); | 68 CHECK(no_result.is_null()); |
69 isolate->OptionalRescheduleException(true); | 69 isolate->OptionalRescheduleException(true); |
70 } | 70 } |
71 | 71 |
72 v8::Handle<v8::Message> CheckThrowsReturnMessage(Handle<Object> a, | 72 v8::Local<v8::Message> CheckThrowsReturnMessage(Handle<Object> a, |
73 Handle<Object> b) { | 73 Handle<Object> b) { |
74 TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); | 74 TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); |
75 MaybeHandle<Object> no_result = Call(a, b); | 75 MaybeHandle<Object> no_result = Call(a, b); |
76 CHECK(isolate->has_pending_exception()); | 76 CHECK(isolate->has_pending_exception()); |
77 CHECK(try_catch.HasCaught()); | 77 CHECK(try_catch.HasCaught()); |
78 CHECK(no_result.is_null()); | 78 CHECK(no_result.is_null()); |
79 isolate->OptionalRescheduleException(true); | 79 isolate->OptionalRescheduleException(true); |
80 CHECK(!try_catch.Message().IsEmpty()); | 80 CHECK(!try_catch.Message().IsEmpty()); |
81 return try_catch.Message(); | 81 return try_catch.Message(); |
82 } | 82 } |
83 | 83 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 void CheckFalse(Handle<Object> a) { | 115 void CheckFalse(Handle<Object> a) { |
116 CheckCall(false_value(), a, undefined()); | 116 CheckCall(false_value(), a, undefined()); |
117 } | 117 } |
118 | 118 |
119 void CheckFalse(double a, double b) { | 119 void CheckFalse(double a, double b) { |
120 CheckCall(false_value(), Val(a), Val(b)); | 120 CheckCall(false_value(), Val(a), Val(b)); |
121 } | 121 } |
122 | 122 |
123 Handle<JSFunction> NewFunction(const char* source) { | 123 Handle<JSFunction> NewFunction(const char* source) { |
124 return v8::Utils::OpenHandle( | 124 return v8::Utils::OpenHandle( |
125 *v8::Handle<v8::Function>::Cast(CompileRun(source))); | 125 *v8::Local<v8::Function>::Cast(CompileRun(source))); |
126 } | 126 } |
127 | 127 |
128 Handle<JSObject> NewObject(const char* source) { | 128 Handle<JSObject> NewObject(const char* source) { |
129 return v8::Utils::OpenHandle( | 129 return v8::Utils::OpenHandle( |
130 *v8::Handle<v8::Object>::Cast(CompileRun(source))); | 130 *v8::Local<v8::Object>::Cast(CompileRun(source))); |
131 } | 131 } |
132 | 132 |
133 Handle<String> Val(const char* string) { | 133 Handle<String> Val(const char* string) { |
134 return isolate->factory()->InternalizeUtf8String(string); | 134 return isolate->factory()->InternalizeUtf8String(string); |
135 } | 135 } |
136 | 136 |
137 Handle<Object> Val(double value) { | 137 Handle<Object> Val(double value) { |
138 return isolate->factory()->NewNumber(value); | 138 return isolate->factory()->NewNumber(value); |
139 } | 139 } |
140 | 140 |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 CHECK(!code.is_null()); | 210 CHECK(!code.is_null()); |
211 function->ReplaceCode(*code); | 211 function->ReplaceCode(*code); |
212 return function; | 212 return function; |
213 } | 213 } |
214 }; | 214 }; |
215 } | 215 } |
216 } | 216 } |
217 } // namespace v8::internal::compiler | 217 } // namespace v8::internal::compiler |
218 | 218 |
219 #endif // V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ | 219 #endif // V8_CCTEST_COMPILER_FUNCTION_TESTER_H_ |
OLD | NEW |