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 #include "test/cctest/compiler/function-tester.h" | 5 #include "test/cctest/compiler/function-tester.h" |
6 | 6 |
7 namespace v8 { | 7 namespace v8 { |
8 namespace internal { | 8 namespace internal { |
9 namespace compiler { | 9 namespace compiler { |
10 | 10 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 | 144 |
145 TEST(StringAdd) { | 145 TEST(StringAdd) { |
146 FunctionTester T("(function(a,b) { return %_StringAdd(a,b); })", flags); | 146 FunctionTester T("(function(a,b) { return %_StringAdd(a,b); })", flags); |
147 | 147 |
148 T.CheckCall(T.Val("aaabbb"), T.Val("aaa"), T.Val("bbb")); | 148 T.CheckCall(T.Val("aaabbb"), T.Val("aaa"), T.Val("bbb")); |
149 T.CheckCall(T.Val("aaa"), T.Val("aaa"), T.Val("")); | 149 T.CheckCall(T.Val("aaa"), T.Val("aaa"), T.Val("")); |
150 T.CheckCall(T.Val("bbb"), T.Val(""), T.Val("bbb")); | 150 T.CheckCall(T.Val("bbb"), T.Val(""), T.Val("bbb")); |
151 } | 151 } |
152 | 152 |
153 | 153 |
154 TEST(StringCharAt) { | |
155 FunctionTester T("(function(a,b) { return %_StringCharAt(a,b); })", flags); | |
156 | |
157 T.CheckCall(T.Val("e"), T.Val("huge fan!"), T.Val(3)); | |
158 T.CheckCall(T.Val("f"), T.Val("\xE2\x9D\x8A fan!"), T.Val(2)); | |
159 T.CheckCall(T.Val(""), T.Val("not a fan!"), T.Val(23)); | |
160 } | |
161 | |
162 | |
163 TEST(StringCharCodeAt) { | 154 TEST(StringCharCodeAt) { |
164 FunctionTester T("(function(a,b) { return %_StringCharCodeAt(a,b); })", | 155 FunctionTester T("(function(a,b) { return %_StringCharCodeAt(a,b); })", |
165 flags); | 156 flags); |
166 | 157 |
167 T.CheckCall(T.Val('e'), T.Val("huge fan!"), T.Val(3)); | 158 T.CheckCall(T.Val('e'), T.Val("huge fan!"), T.Val(3)); |
168 T.CheckCall(T.Val('f'), T.Val("\xE2\x9D\x8A fan!"), T.Val(2)); | 159 T.CheckCall(T.Val('f'), T.Val("\xE2\x9D\x8A fan!"), T.Val(2)); |
169 T.CheckCall(T.nan(), T.Val("not a fan!"), T.Val(23)); | 160 T.CheckCall(T.nan(), T.Val("not a fan!"), T.Val(23)); |
170 } | 161 } |
171 | 162 |
172 | 163 |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
233 | 224 |
234 T.CheckCall(T.Val("a"), T.Val("a")); | 225 T.CheckCall(T.Val("a"), T.Val("a")); |
235 T.CheckCall(T.Val("b"), T.NewObject("(new String('b'))")); | 226 T.CheckCall(T.Val("b"), T.NewObject("(new String('b'))")); |
236 T.CheckCall(T.Val(123), T.Val(123)); | 227 T.CheckCall(T.Val(123), T.Val(123)); |
237 T.CheckCall(T.Val(456), T.NewObject("(new Number(456))")); | 228 T.CheckCall(T.Val(456), T.NewObject("(new Number(456))")); |
238 } | 229 } |
239 | 230 |
240 } // namespace compiler | 231 } // namespace compiler |
241 } // namespace internal | 232 } // namespace internal |
242 } // namespace v8 | 233 } // namespace v8 |
OLD | NEW |