Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 4955 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4966 CHECK_EQ(v8_num(1), v8_num(1)); | 4966 CHECK_EQ(v8_num(1), v8_num(1)); |
| 4967 CHECK_EQ(v8_num(1.00), v8_num(1)); | 4967 CHECK_EQ(v8_num(1.00), v8_num(1)); |
| 4968 CHECK_NE(v8_num(1), v8_num(2)); | 4968 CHECK_NE(v8_num(1), v8_num(2)); |
| 4969 | 4969 |
| 4970 // Assume String is not internalized. | 4970 // Assume String is not internalized. |
| 4971 CHECK(v8_str("a")->StrictEquals(v8_str("a"))); | 4971 CHECK(v8_str("a")->StrictEquals(v8_str("a"))); |
| 4972 CHECK(!v8_str("a")->StrictEquals(v8_str("b"))); | 4972 CHECK(!v8_str("a")->StrictEquals(v8_str("b"))); |
| 4973 CHECK(!v8_str("5")->StrictEquals(v8_num(5))); | 4973 CHECK(!v8_str("5")->StrictEquals(v8_num(5))); |
| 4974 CHECK(v8_num(1)->StrictEquals(v8_num(1))); | 4974 CHECK(v8_num(1)->StrictEquals(v8_num(1))); |
| 4975 CHECK(!v8_num(1)->StrictEquals(v8_num(2))); | 4975 CHECK(!v8_num(1)->StrictEquals(v8_num(2))); |
| 4976 CHECK(v8_num(0)->StrictEquals(v8_num(-0))); | 4976 CHECK(v8_num(0.0)->StrictEquals(v8_num(-0.0))); |
|
yusukesuzuki
2013/09/24 12:58:26
Since 0 is int, static_cast<double>(-0) becomes 0.
| |
| 4977 Local<Value> not_a_number = v8_num(i::OS::nan_value()); | 4977 Local<Value> not_a_number = v8_num(i::OS::nan_value()); |
| 4978 CHECK(!not_a_number->StrictEquals(not_a_number)); | 4978 CHECK(!not_a_number->StrictEquals(not_a_number)); |
| 4979 CHECK(v8::False()->StrictEquals(v8::False())); | 4979 CHECK(v8::False()->StrictEquals(v8::False())); |
| 4980 CHECK(!v8::False()->StrictEquals(v8::Undefined())); | 4980 CHECK(!v8::False()->StrictEquals(v8::Undefined())); |
| 4981 | 4981 |
| 4982 v8::Handle<v8::Object> obj = v8::Object::New(); | 4982 v8::Handle<v8::Object> obj = v8::Object::New(); |
| 4983 v8::Persistent<v8::Object> alias(isolate, obj); | 4983 v8::Persistent<v8::Object> alias(isolate, obj); |
| 4984 CHECK(v8::Local<v8::Object>::New(isolate, alias)->StrictEquals(obj)); | 4984 CHECK(v8::Local<v8::Object>::New(isolate, alias)->StrictEquals(obj)); |
| 4985 alias.Dispose(); | 4985 alias.Dispose(); |
| 4986 | |
| 4987 CHECK(v8_str("a")->SameValue(v8_str("a"))); | |
| 4988 CHECK(!v8_str("a")->SameValue(v8_str("b"))); | |
| 4989 CHECK(!v8_str("5")->SameValue(v8_num(5))); | |
| 4990 CHECK(v8_num(1)->SameValue(v8_num(1))); | |
| 4991 CHECK(!v8_num(1)->SameValue(v8_num(2))); | |
| 4992 CHECK(!v8_num(0.0)->SameValue(v8_num(-0.0))); | |
|
yusukesuzuki
2013/09/24 12:58:26
`SameValue(0.0, -0.0)` becomes false.
| |
| 4993 CHECK(not_a_number->SameValue(not_a_number)); | |
|
yusukesuzuki
2013/09/24 12:58:26
`SameValue(NaN, NaN)` becomes true.
| |
| 4994 CHECK(v8::False()->SameValue(v8::False())); | |
| 4995 CHECK(!v8::False()->SameValue(v8::Undefined())); | |
| 4986 } | 4996 } |
| 4987 | 4997 |
| 4988 | 4998 |
| 4989 THREADED_TEST(MultiRun) { | 4999 THREADED_TEST(MultiRun) { |
| 4990 LocalContext context; | 5000 LocalContext context; |
| 4991 v8::HandleScope scope(context->GetIsolate()); | 5001 v8::HandleScope scope(context->GetIsolate()); |
| 4992 Local<Script> script = Script::Compile(v8_str("x")); | 5002 Local<Script> script = Script::Compile(v8_str("x")); |
| 4993 for (int i = 0; i < 10; i++) | 5003 for (int i = 0; i < 10; i++) |
| 4994 script->Run(); | 5004 script->Run(); |
| 4995 } | 5005 } |
| (...skipping 15571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 20567 Local<Object> data2 = v8::Object::New(); | 20577 Local<Object> data2 = v8::Object::New(); |
| 20568 function_new_expected_env = data2; | 20578 function_new_expected_env = data2; |
| 20569 Local<Function> func2 = Function::New(isolate, FunctionNewCallback, data2); | 20579 Local<Function> func2 = Function::New(isolate, FunctionNewCallback, data2); |
| 20570 CHECK(!func2->IsNull()); | 20580 CHECK(!func2->IsNull()); |
| 20571 CHECK_NE(func, func2); | 20581 CHECK_NE(func, func2); |
| 20572 env->Global()->Set(v8_str("func2"), func2); | 20582 env->Global()->Set(v8_str("func2"), func2); |
| 20573 Local<Value> result2 = CompileRun("func2();"); | 20583 Local<Value> result2 = CompileRun("func2();"); |
| 20574 CHECK_EQ(v8::Integer::New(17, isolate), result2); | 20584 CHECK_EQ(v8::Integer::New(17, isolate), result2); |
| 20575 } | 20585 } |
| 20576 | 20586 |
| OLD | NEW |