1/** 2 * File Name: switch-002.js 3 * ECMA Section: 4 * Description: The switch Statement 5 * 6 * A simple switch test with no abrupt completions. 7 * 8 * Author: christine@netscape.com 9 * Date: 11 August 1998 10 * 11 */ 12 var SECTION = "switch-002"; 13 var VERSION = "ECMA_2"; 14 var TITLE = "The switch statement"; 15 16 startTest(); 17 writeHeaderToLog( SECTION + " "+ TITLE); 18 19 var tc = 0; 20 var testcases = new Array(); 21 22 SwitchTest( 0, 6 ); 23 SwitchTest( 1, 4 ); 24 SwitchTest( 2, 56 ); 25 SwitchTest( 3, 48 ); 26 SwitchTest( 4, 64 ); 27 SwitchTest( true, 32 ); 28 SwitchTest( false, 32 ); 29 SwitchTest( null, 32 ); 30 SwitchTest( void 0, 32 ); 31 SwitchTest( "0", 32 ); 32 33 test(); 34 35 function SwitchTest( input, expect ) { 36 var result = 0; 37 38 switch ( input ) { 39 case 0: 40 result += 2; 41 case 1: 42 result += 4; 43 break; 44 case 2: 45 result += 8; 46 case 3: 47 result += 16; 48 default: 49 result += 32; 50 break; 51 case 4: 52 result += 64; 53 } 54 55 testcases[tc++] = new TestCase( 56 SECTION, 57 "switch with no breaks: input is " + input, 58 expect, 59 result ); 60 } 61