js/src/jit-test/tests/basic/bug744285.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 // |jit-test| error: TypeError;
michael@0 2 var TZ_DIFF = getTimeZoneDiff();
michael@0 3 var now = new Date;
michael@0 4 var TZ_DIFF = getTimeZoneDiff();
michael@0 5 var now = new Date;
michael@0 6 var MAX_UNIX_TIMET = 2145859200;
michael@0 7 var RANGE_EXPANSION_AMOUNT = 60;
michael@0 8 function tzOffsetFromUnixTimestamp(timestamp) {
michael@0 9 new Date
michael@0 10 }
michael@0 11 function clearDSTOffsetCache(undesiredTimestamp) {
michael@0 12 tzOffsetFromUnixTimestamp()
michael@0 13 tzOffsetFromUnixTimestamp()
michael@0 14 tzOffsetFromUnixTimestamp()
michael@0 15 tzOffsetFromUnixTimestamp()
michael@0 16 tzOffsetFromUnixTimestamp()
michael@0 17 }
michael@0 18 function computeCanonicalTZOffset(timestamp) {
michael@0 19 clearDSTOffsetCache()
michael@0 20 tzOffsetFromUnixTimestamp()
michael@0 21 }
michael@0 22 var TEST_TIMESTAMPS_SECONDS = [
michael@0 23 0,
michael@0 24 RANGE_EXPANSION_AMOUNT,
michael@0 25 MAX_UNIX_TIMET,
michael@0 26 ];
michael@0 27 var TEST_TIMESTAMPS = TEST_TIMESTAMPS_SECONDS.map(function(v) { });
michael@0 28 var CORRECT_TZOFFSETS = TEST_TIMESTAMPS.map(computeCanonicalTZOffset);
michael@0 29 var TZ_DIFF = getTimeZoneDiff();
michael@0 30 var now = new Date;
michael@0 31 var TZ_DIFF = getTimeZoneDiff();
michael@0 32 var now = new Date;function getTimeZoneDiff() {
michael@0 33 new Date/60
michael@0 34 }
michael@0 35 function check(b, desc) {
michael@0 36 function classOf(obj) {
michael@0 37 return Object.prototype.toString.call(obj);
michael@0 38 }
michael@0 39 function ownProperties(obj) {
michael@0 40 return Object.getOwnPropertyNames(obj).
michael@0 41 map(function (p) { return [p, Object.getOwnPropertyDescriptor(obj, p)]; });
michael@0 42 }
michael@0 43 function isCloneable(pair) { }
michael@0 44 function assertIsCloneOf(a, b, path) {
michael@0 45 ca = classOf(a)
michael@0 46 assertEq(ca, classOf(b), path)
michael@0 47 assertEq(Object.getPrototypeOf(a), ca == "[object Object]" ? Object.prototype : Array.prototype, path)
michael@0 48 pb = ownProperties(b).filter(isCloneable)
michael@0 49 pa = ownProperties(a)
michael@0 50 function byName(a, b) 0
michael@0 51 byName
michael@0 52 (pa.length, pb.length, "should see the same number of properties " + path)
michael@0 53 for (var i = 0; i < pa.length; i++) {
michael@0 54 gczeal(4)
michael@0 55 }
michael@0 56 }
michael@0 57 banner = desc || uneval()
michael@0 58 a = deserialize(serialize(b))
michael@0 59 var queue = [[a, b, banner]];
michael@0 60 while (queue.length) {
michael@0 61 var triple = queue.shift();
michael@0 62 assertIsCloneOf(triple[0], triple[1], triple[2])
michael@0 63 }
michael@0 64 }
michael@0 65 check({x: 0.7, p: "forty-two", y: null, z: undefined});
michael@0 66 check(Object.prototype);
michael@0 67 b=[, , 2, 3];
michael@0 68 b.expando=true;
michael@0 69 b[5]=5;
michael@0 70 b[0]=0;b[4]=4;
michael@0 71 check(b)([, , , , , , 6])

mercurial