18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/**
28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  File Name:          exception-003
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  ECMA Section:
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Description:        Tests for JavaScript Standard Exceptions
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Target error.
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Author:             christine@netscape.com
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Date:               31 August 1998
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var SECTION = "exception-003";
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var VERSION = "js1_4";
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var TITLE   = "Tests for JavaScript Standard Exceptions: TargetError";
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    startTest();
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    writeHeaderToLog( SECTION + " "+ TITLE);
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var tc = 0;
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var testcases = new Array();
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Target_1();
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    test();
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    function Target_1() {
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        result = "failed: no exception thrown";
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        exception = null;
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        try {
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            string = new String("hi");
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            string.toString = Boolean.prototype.toString;
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            string.toString();
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        } catch ( e ) {
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            result = "passed:  threw exception",
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            exception = e.toString();
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        } finally {
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            testcases[tc++] = new TestCase(
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                SECTION,
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                "string = new String(\"hi\");"+
408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                "string.toString = Boolean.prototype.toString" +
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                "string.toString() [ exception is " + exception +" ]",
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                "passed:  threw exception",
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                result );
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        }
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
47