OLD | NEW |
1 /* | 1 /* |
2 * This file is part of Adblock Plus <https://adblockplus.org/>, | 2 * This file is part of Adblock Plus <https://adblockplus.org/>, |
3 * Copyright (C) 2006-present eyeo GmbH | 3 * Copyright (C) 2006-present eyeo GmbH |
4 * | 4 * |
5 * Adblock Plus is free software: you can redistribute it and/or modify | 5 * Adblock Plus is free software: you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 3 as | 6 * it under the terms of the GNU General Public License version 3 as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
8 * | 8 * |
9 * Adblock Plus is distributed in the hope that it will be useful, | 9 * Adblock Plus is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 params.push_back(GetJsEngine().NewValue("xyz")); | 214 params.push_back(GetJsEngine().NewValue("xyz")); |
215 ASSERT_EQ("2/5/xyz", value.Call(params, thisPtr).AsString()); | 215 ASSERT_EQ("2/5/xyz", value.Call(params, thisPtr).AsString()); |
216 } | 216 } |
217 | 217 |
218 TEST_F(JsValueTest, JsValueCallSingleArg) | 218 TEST_F(JsValueTest, JsValueCallSingleArg) |
219 { | 219 { |
220 auto func = GetJsEngine().Evaluate("(function(arg) {return arg * 2;})"); | 220 auto func = GetJsEngine().Evaluate("(function(arg) {return arg * 2;})"); |
221 EXPECT_EQ(10, func.Call(GetJsEngine().NewValue(5)).AsInt()); | 221 EXPECT_EQ(10, func.Call(GetJsEngine().NewValue(5)).AsInt()); |
222 } | 222 } |
223 | 223 |
224 TEST_F(JsValueTest, ThrowingCoversion) | 224 TEST_F(JsValueTest, ThrowingConversion) |
225 { | 225 { |
226 const std::string source("\ | 226 const std::string source("\ |
227 function Foo() {\ | 227 function Foo() {\ |
228 this.toString = function() {throw 'test1';};\ | 228 this.toString = function() {throw 'test1';};\ |
229 this.valueOf = function() {throw 'test2';};\ | 229 this.valueOf = function() {throw 'test2';};\ |
230 };\ | 230 };\ |
231 new Foo()"); | 231 new Foo()"); |
232 auto value = GetJsEngine().Evaluate(source); | 232 auto value = GetJsEngine().Evaluate(source); |
233 ASSERT_EQ("", value.AsString()); | 233 ASSERT_EQ("", value.AsString()); |
234 ASSERT_EQ(0, value.AsInt()); | 234 ASSERT_ANY_THROW(value.AsInt()); |
235 } | 235 } |
OLD | NEW |