e26131f792
All these tests had <script> tags with additional JS code. All embedded script code is (automatically) concatenated with existing .js files into one .js test file per test. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/21070002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
347 lines
11 KiB
Plaintext
347 lines
11 KiB
Plaintext
# Copyright 2013 the V8 project authors. All rights reserved.
|
|
# Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions
|
|
# are met:
|
|
# 1. Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# 2. Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
|
|
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
|
|
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
KDE JS Test
|
|
|
|
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
|
|
|
PASS !undefined is true
|
|
PASS !null is true
|
|
PASS !!true is true
|
|
PASS !false is true
|
|
PASS !!1 is true
|
|
PASS !0 is true
|
|
PASS !!'a' is true
|
|
PASS !'' is true
|
|
PASS nonSpeculativeNot(undefined) is true
|
|
PASS nonSpeculativeNot(null) is true
|
|
PASS nonSpeculativeNot(!true) is true
|
|
PASS nonSpeculativeNot(false) is true
|
|
PASS nonSpeculativeNot(!1) is true
|
|
PASS nonSpeculativeNot(0) is true
|
|
PASS nonSpeculativeNot(!'a') is true
|
|
PASS nonSpeculativeNot('') is true
|
|
PASS +9 is 9
|
|
PASS var i = 10; +i is 10
|
|
PASS -11 is -11
|
|
PASS var i = 12; -i is -12
|
|
PASS var i = 0; ++i; is 1
|
|
PASS var i = 0; ++i; i is 1
|
|
PASS var i = 0; i++; is 0
|
|
PASS var i = 0; i++; i is 1
|
|
PASS var i = true; i++ is 1
|
|
PASS var i = true; i++; i is 2
|
|
PASS var i = 0; --i; is -1
|
|
PASS var i = 0; --i; i is -1
|
|
PASS var i = 0; i--; is 0
|
|
PASS var i = 0; i--; i is -1
|
|
PASS var i = true; i-- is 1
|
|
PASS var i = true; i--; i is 0
|
|
PASS ~0 is -1
|
|
PASS ~1 is -2
|
|
PASS ~NaN is -1
|
|
PASS ~Infinity is -1
|
|
PASS ~Math.pow(2, 33) is -1
|
|
PASS ~(Math.pow(2, 32) + Math.pow(2, 31) + 2) is 2147483645
|
|
PASS ~null is -1
|
|
PASS 3 & 1 is 1
|
|
PASS 2 | true is 3
|
|
PASS '3' ^ 1 is 2
|
|
PASS 3^4&5 is 7
|
|
PASS 2|4^5 is 3
|
|
PASS 1 << 2 is 4
|
|
PASS 8 >> 1 is 4
|
|
PASS 1 >> 2 is 0
|
|
PASS -8 >> 24 is -1
|
|
PASS 8 >>> 2 is 2
|
|
PASS -8 >>> 24 is 255
|
|
PASS (-2200000000 >> 1) << 1 is 2094967296
|
|
PASS Infinity >> 1 is 0
|
|
PASS Infinity << 1 is 0
|
|
PASS Infinity >>> 1 is 0
|
|
PASS NaN >> 1 is 0
|
|
PASS NaN << 1 is 0
|
|
PASS NaN >>> 1 is 0
|
|
PASS 8.1 >> 1 is 4
|
|
PASS 8.1 << 1 is 16
|
|
PASS 8.1 >>> 1 is 4
|
|
PASS 8.9 >> 1 is 4
|
|
PASS 8.9 << 1 is 16
|
|
PASS 8.9 >>> 1 is 4
|
|
PASS Math.pow(2, 32) >> 1 is 0
|
|
PASS Math.pow(2, 32) << 1 is 0
|
|
PASS Math.pow(2, 32) >>> 1 is 0
|
|
PASS 1 << two is 4
|
|
PASS 8 >> one is 4
|
|
PASS 1 >> two is 0
|
|
PASS -8 >> twentyFour is -1
|
|
PASS 8 >>> two is 2
|
|
PASS -8 >>> twentyFour is 255
|
|
PASS (-2200000000 >> one) << one is 2094967296
|
|
PASS Infinity >> one is 0
|
|
PASS Infinity << one is 0
|
|
PASS Infinity >>> one is 0
|
|
PASS NaN >> one is 0
|
|
PASS NaN << one is 0
|
|
PASS NaN >>> one is 0
|
|
PASS 888.1 >> one is 444
|
|
PASS 888.1 << one is 1776
|
|
PASS 888.1 >>> one is 444
|
|
PASS 888.9 >> one is 444
|
|
PASS 888.9 << one is 1776
|
|
PASS 888.9 >>> one is 444
|
|
PASS Math.pow(2, 32) >> one is 0
|
|
PASS Math.pow(2, 32) << one is 0
|
|
PASS Math.pow(2, 32) >>> one is 0
|
|
PASS 1+2 is 3
|
|
PASS 'a'+'b' is 'ab'
|
|
PASS 'a'+2 is 'a2'
|
|
PASS '2'+'-1' is '2-1'
|
|
PASS true+'a' is 'truea'
|
|
PASS 'a' + null is 'anull'
|
|
PASS true+1 is 2
|
|
PASS false+null is 0
|
|
PASS 1-3 is -2
|
|
PASS isNaN('a'-3) is true
|
|
PASS '3'-'-1' is 4
|
|
PASS '4'-2 is 2
|
|
PASS true-false is 1
|
|
PASS false-1 is -1
|
|
PASS null-true is -1
|
|
PASS 2 * 3 is 6
|
|
PASS true * 3 is 3
|
|
PASS 2 * '3' is 6
|
|
PASS 6 / 4 is 1.5
|
|
PASS '6' / '2' is 3
|
|
PASS isNaN('x' / 1) is true
|
|
PASS isNaN(1 / NaN) is true
|
|
PASS isNaN(Infinity / Infinity) is true
|
|
PASS Infinity / 0 is Infinity
|
|
PASS -Infinity / 0 is -Infinity
|
|
PASS Infinity / 1 is Infinity
|
|
PASS -Infinity / 1 is -Infinity
|
|
PASS 1 / Infinity == +0 is true
|
|
PASS 1 / -Infinity == -0 is true
|
|
PASS isNaN(0/0) is true
|
|
PASS 0 / 1 === 0 is true
|
|
PASS 0 / -1 === -0 is true
|
|
PASS 1 / 0 is Infinity
|
|
PASS -1 / 0 is -Infinity
|
|
PASS 6 % 4 is 2
|
|
PASS '-6' % 4 is -2
|
|
PASS 2==2 is true
|
|
PASS 1==2 is false
|
|
PASS nonSpeculativeEqual(2,2) is true
|
|
PASS nonSpeculativeEqual(1,2) is false
|
|
PASS 1<2 is true
|
|
PASS 1<=2 is true
|
|
PASS 2<1 is false
|
|
PASS 2<=1 is false
|
|
PASS nonSpeculativeLess(1,2) is true
|
|
PASS nonSpeculativeLessEq(1,2) is true
|
|
PASS nonSpeculativeLess(2,1) is false
|
|
PASS nonSpeculativeLessEq(2,1) is false
|
|
PASS 2>1 is true
|
|
PASS 2>=1 is true
|
|
PASS 1>=2 is false
|
|
PASS 1>2 is false
|
|
PASS nonSpeculativeGreater(2,1) is true
|
|
PASS nonSpeculativeGreaterEq(2,1) is true
|
|
PASS nonSpeculativeGreaterEq(1,2) is false
|
|
PASS nonSpeculativeGreater(1,2) is false
|
|
PASS 'abc' == 'abc' is true
|
|
PASS 'abc' != 'xyz' is true
|
|
PASS true == true is true
|
|
PASS false == false is true
|
|
PASS true != false is true
|
|
PASS 'a' != null is true
|
|
PASS 'a' != undefined is true
|
|
PASS null == null is true
|
|
PASS null == undefined is true
|
|
PASS undefined == undefined is true
|
|
PASS NaN != NaN is true
|
|
PASS true != undefined is true
|
|
PASS true != null is true
|
|
PASS false != undefined is true
|
|
PASS false != null is true
|
|
PASS '0' == 0 is true
|
|
PASS 1 == '1' is true
|
|
PASS NaN != NaN is true
|
|
PASS NaN != 0 is true
|
|
PASS NaN != undefined is true
|
|
PASS true == 1 is true
|
|
PASS true != 2 is true
|
|
PASS 1 == true is true
|
|
PASS false == 0 is true
|
|
PASS 0 == false is true
|
|
PASS nonSpeculativeEqual('abc', 'abc') is true
|
|
PASS nonSpeculativeNotEqual('abc', 'xyz') is true
|
|
PASS nonSpeculativeEqual(true, true) is true
|
|
PASS nonSpeculativeEqual(false, false) is true
|
|
PASS nonSpeculativeNotEqual(true, false) is true
|
|
PASS nonSpeculativeNotEqual('a', null) is true
|
|
PASS nonSpeculativeNotEqual('a', undefined) is true
|
|
PASS nonSpeculativeEqual(null, null) is true
|
|
PASS nonSpeculativeEqual(null, undefined) is true
|
|
PASS nonSpeculativeEqual(undefined, undefined) is true
|
|
PASS nonSpeculativeNotEqual(NaN, NaN) is true
|
|
PASS nonSpeculativeNotEqual(true, undefined) is true
|
|
PASS nonSpeculativeNotEqual(true, null) is true
|
|
PASS nonSpeculativeNotEqual(false, undefined) is true
|
|
PASS nonSpeculativeNotEqual(false, null) is true
|
|
PASS nonSpeculativeEqual('0', 0) is true
|
|
PASS nonSpeculativeEqual(1, '1') is true
|
|
PASS nonSpeculativeNotEqual(NaN, NaN) is true
|
|
PASS nonSpeculativeNotEqual(NaN, 0) is true
|
|
PASS nonSpeculativeNotEqual(NaN, undefined) is true
|
|
PASS nonSpeculativeEqual(true, 1) is true
|
|
PASS nonSpeculativeNotEqual(true, 2) is true
|
|
PASS nonSpeculativeEqual(1, true) is true
|
|
PASS nonSpeculativeEqual(false, 0) is true
|
|
PASS nonSpeculativeEqual(0, false) is true
|
|
PASS 'abc' < 'abx' is true
|
|
PASS 'abc' < 'abcd' is true
|
|
PASS 'abc' < 'abc' is false
|
|
PASS 'abcd' < 'abcd' is false
|
|
PASS 'abx' < 'abc' is false
|
|
PASS nonSpeculativeLess('abc', 'abx') is true
|
|
PASS nonSpeculativeLess('abc', 'abcd') is true
|
|
PASS nonSpeculativeLess('abc', 'abc') is false
|
|
PASS nonSpeculativeLess('abcd', 'abcd') is false
|
|
PASS nonSpeculativeLess('abx', 'abc') is false
|
|
PASS 'abc' <= 'abc' is true
|
|
PASS 'abc' <= 'abx' is true
|
|
PASS 'abx' <= 'abc' is false
|
|
PASS 'abcd' <= 'abc' is false
|
|
PASS 'abc' <= 'abcd' is true
|
|
PASS nonSpeculativeLessEq('abc', 'abc') is true
|
|
PASS nonSpeculativeLessEq('abc', 'abx') is true
|
|
PASS nonSpeculativeLessEq('abx', 'abc') is false
|
|
PASS nonSpeculativeLessEq('abcd', 'abc') is false
|
|
PASS nonSpeculativeLessEq('abc', 'abcd') is true
|
|
PASS 'abc' > 'abx' is false
|
|
PASS 'abc' > 'abc' is false
|
|
PASS 'abcd' > 'abc' is true
|
|
PASS 'abx' > 'abc' is true
|
|
PASS 'abc' > 'abcd' is false
|
|
PASS nonSpeculativeGreater('abc', 'abx') is false
|
|
PASS nonSpeculativeGreater('abc', 'abc') is false
|
|
PASS nonSpeculativeGreater('abcd', 'abc') is true
|
|
PASS nonSpeculativeGreater('abx', 'abc') is true
|
|
PASS nonSpeculativeGreater('abc', 'abcd') is false
|
|
PASS 'abc' >= 'abc' is true
|
|
PASS 'abcd' >= 'abc' is true
|
|
PASS 'abx' >= 'abc' is true
|
|
PASS 'abc' >= 'abx' is false
|
|
PASS 'abc' >= 'abx' is false
|
|
PASS 'abc' >= 'abcd' is false
|
|
PASS nonSpeculativeGreaterEq('abc', 'abc') is true
|
|
PASS nonSpeculativeGreaterEq('abcd', 'abc') is true
|
|
PASS nonSpeculativeGreaterEq('abx', 'abc') is true
|
|
PASS nonSpeculativeGreaterEq('abc', 'abx') is false
|
|
PASS nonSpeculativeGreaterEq('abc', 'abx') is false
|
|
PASS nonSpeculativeGreaterEq('abc', 'abcd') is false
|
|
PASS 'abc' <= 0 is false
|
|
PASS '' <= 0 is true
|
|
PASS ' ' <= 0 is true
|
|
PASS null <= 0 is true
|
|
PASS 0 <= 'abc' is false
|
|
PASS 0 <= '' is true
|
|
PASS 0 <= null is true
|
|
PASS null <= null is true
|
|
PASS 6 < '52' is true
|
|
PASS 6 < '72' is true
|
|
PASS NaN < 0 is false
|
|
PASS NaN <= 0 is false
|
|
PASS NaN > 0 is false
|
|
PASS NaN >= 0 is false
|
|
PASS nonSpeculativeLessEq('abc', 0) is false
|
|
PASS nonSpeculativeLessEq('', 0) is true
|
|
PASS nonSpeculativeLessEq(' ', 0) is true
|
|
PASS nonSpeculativeLessEq(null, 0) is true
|
|
PASS nonSpeculativeLessEq(0, 'abc') is false
|
|
PASS nonSpeculativeLessEq(0, '') is true
|
|
PASS nonSpeculativeLessEq(0, null) is true
|
|
PASS nonSpeculativeLessEq(null, null) is true
|
|
PASS nonSpeculativeLess(6, '52') is true
|
|
PASS nonSpeculativeLess(6, '72') is true
|
|
PASS nonSpeculativeLess(NaN, 0) is false
|
|
PASS nonSpeculativeLessEq(NaN, 0) is false
|
|
PASS nonSpeculativeGreater(NaN, 0) is false
|
|
PASS nonSpeculativeGreaterEq(NaN, 0) is false
|
|
PASS 0 === false is false
|
|
PASS null === null is true
|
|
PASS NaN === NaN is false
|
|
PASS 0.0 === 0 is true
|
|
PASS 'abc' === 'abc' is true
|
|
PASS 'a' === 'x' is false
|
|
PASS 1 === '1' is false
|
|
PASS '1' === 1 is false
|
|
PASS true === true is true
|
|
PASS false === false is true
|
|
PASS true === false is false
|
|
PASS Math === Math is true
|
|
PASS Math === Boolean is false
|
|
PASS Infinity === Infinity is true
|
|
PASS nonSpeculativeStrictEqual(0, false) is false
|
|
PASS nonSpeculativeStrictEqual(null, null) is true
|
|
PASS nonSpeculativeStrictEqual(NaN, NaN) is false
|
|
PASS nonSpeculativeStrictEqual(0.0, 0) is true
|
|
PASS nonSpeculativeStrictEqual('abc', 'abc') is true
|
|
PASS nonSpeculativeStrictEqual('a', 'x') is false
|
|
PASS nonSpeculativeStrictEqual(1, '1') is false
|
|
PASS nonSpeculativeStrictEqual('1', 1) is false
|
|
PASS nonSpeculativeStrictEqual(true, true) is true
|
|
PASS nonSpeculativeStrictEqual(false, false) is true
|
|
PASS nonSpeculativeStrictEqual(true, false) is false
|
|
PASS nonSpeculativeStrictEqual(Math, Math) is true
|
|
PASS nonSpeculativeStrictEqual(Math, Boolean) is false
|
|
PASS nonSpeculativeStrictEqual(Infinity, Infinity) is true
|
|
PASS 0 !== 0 is false
|
|
PASS 0 !== 1 is true
|
|
PASS nonSpeculativeStrictNotEqual(0, 0) is false
|
|
PASS nonSpeculativeStrictNotEqual(0, 1) is true
|
|
PASS typeof undefined is 'undefined'
|
|
PASS typeof null is 'object'
|
|
PASS typeof true is 'boolean'
|
|
PASS typeof false is 'boolean'
|
|
PASS typeof 1 is 'number'
|
|
PASS typeof 'a' is 'string'
|
|
PASS typeof shouldBe is 'function'
|
|
PASS typeof Number.NaN is 'number'
|
|
PASS 11 && 22 is 22
|
|
PASS null && true is null
|
|
PASS 11 || 22 is 11
|
|
PASS null || 'a' is 'a'
|
|
PASS void 1 is undefined.
|
|
PASS 1 in [1, 2] is true
|
|
PASS 3 in [1, 2] is false
|
|
PASS 'a' in { a:1, b:2 } is true
|
|
PASS (new Boolean()) instanceof Boolean is true
|
|
PASS (new Boolean()) instanceof Number is false
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|