js/src/tests/ecma_2/Statements/try-005.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:65ab389908a7
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6
7 /**
8 * File Name: try-005.js
9 * ECMA Section:
10 * Description: The try statement
11 *
12 * This test has a try with one catch block but no finally. Same
13 * as try-004, but the eval statement is called from a function, not
14 * directly from within the try block.
15 *
16 * Author: christine@netscape.com
17 * Date: 11 August 1998
18 */
19 var SECTION = "try-005";
20 var VERSION = "ECMA_2";
21 var TITLE = "The try statement";
22
23 startTest();
24 writeHeaderToLog( SECTION + " "+ TITLE);
25
26 TryToCatch( "Math.PI", Math.PI );
27 TryToCatch( "Thrower(5)", "Caught 5" );
28 TryToCatch( "Thrower(\"some random exception\")", "Caught some random exception" );
29
30 test();
31
32 function Thrower( v ) {
33 throw "Caught " + v;
34 }
35 function Eval( v ) {
36 return eval( v );
37 }
38
39 /**
40 * Evaluate a string. Catch any exceptions thrown. If no exception is
41 * expected, verify the result of the evaluation. If an exception is
42 * expected, verify that we got the right exception.
43 */
44
45 function TryToCatch( value, expect ) {
46 try {
47 result = Eval( value );
48 } catch ( e ) {
49 result = e;
50 }
51
52 new TestCase(
53 SECTION,
54 "eval( " + value +" )",
55 expect,
56 result );
57 }

mercurial