js/src/tests/test262/ch12/12.11/S12.11_A1_T4.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 // Copyright 2009 the Sputnik authors. All rights reserved.
michael@0 2 // This code is governed by the BSD license found in the LICENSE file.
michael@0 3
michael@0 4 /**
michael@0 5 * If Result.type is break and Result.target is in the current
michael@0 6 * label set, return (normal, Result.value, empty)
michael@0 7 *
michael@0 8 * @path ch12/12.11/S12.11_A1_T4.js
michael@0 9 * @description Using case with isNaN and isNaN(value)
michael@0 10 */
michael@0 11
michael@0 12 function SwitchTest(value){
michael@0 13 var result = 0;
michael@0 14
michael@0 15 switch(value) {
michael@0 16 case 0:
michael@0 17 result += 2;
michael@0 18 case 1:
michael@0 19 result += 4;
michael@0 20 break;
michael@0 21 case 2:
michael@0 22 result += 8;
michael@0 23 case isNaN(value):
michael@0 24 result += 16;
michael@0 25 default:
michael@0 26 result += 32;
michael@0 27 break;
michael@0 28 case null:
michael@0 29 result += 64;
michael@0 30 case isNaN:
michael@0 31 result += 128;
michael@0 32 break;
michael@0 33 case Infinity:
michael@0 34 result += 256;
michael@0 35 case 2+3:
michael@0 36 result += 512;
michael@0 37 break;
michael@0 38 case undefined:
michael@0 39 result += 1024;
michael@0 40 }
michael@0 41
michael@0 42 return result;
michael@0 43 }
michael@0 44
michael@0 45 if(!(SwitchTest(eval('Number(false)')) === 6)){
michael@0 46 $ERROR("#1: SwitchTest(0) === 6. Actual: SwitchTest(0) ==="+ SwitchTest(0) );
michael@0 47 }
michael@0 48
michael@0 49 if(!(SwitchTest(parseInt) === 32)){
michael@0 50 $ERROR("#2: SwitchTest(parseInt) === 32. Actual: SwitchTest(parseInt) ==="+ SwitchTest(parseInt) );
michael@0 51 }
michael@0 52
michael@0 53 if(!(SwitchTest(isNaN) === 128)){
michael@0 54 $ERROR("#3: SwitchTest(isNaN) === 128. Actual: SwitchTest(isNaN) ==="+ SwitchTest(isNaN) );
michael@0 55 }
michael@0 56
michael@0 57 if(!(SwitchTest(true) === 32)){
michael@0 58 $ERROR("#6: SwitchTest(true) === 32. Actual: SwitchTest(true) ==="+ SwitchTest(true) );
michael@0 59 }
michael@0 60
michael@0 61 if(!(SwitchTest(false) === 48)){
michael@0 62 $ERROR("#7: SwitchTest(false) === 48. Actual: SwitchTest(false) ==="+ SwitchTest(false) );
michael@0 63 }
michael@0 64
michael@0 65 if(!(SwitchTest(null) === 192)){
michael@0 66 $ERROR("#8: SwitchTest(null) === 192. Actual: SwitchTest(null) ==="+ SwitchTest(null) );
michael@0 67 }
michael@0 68
michael@0 69 if(!(SwitchTest(void 0) === 1024)){
michael@0 70 $ERROR("#9: SwitchTest(void 0) === 1024. Actual: SwitchTest(void 0) ==="+ SwitchTest(void 0) );
michael@0 71 }
michael@0 72
michael@0 73 if(!(SwitchTest(NaN) === 32)){
michael@0 74 $ERROR("#10: SwitchTest(NaN) === 32. Actual: SwitchTest(NaN) ==="+ SwitchTest(NaN) );
michael@0 75 }
michael@0 76
michael@0 77 if(!(SwitchTest(Infinity) === 768)){
michael@0 78 $ERROR("#10: SwitchTest(NaN) === 768. Actual: SwitchTest(NaN) ==="+ SwitchTest(NaN) );
michael@0 79 }
michael@0 80

mercurial