18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/**
28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    File Name:          boolean-001.js
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Description:        Corresponds to ecma/Boolean/15.6.4.2-4-n.js
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                        The toString function is not generic; it generates
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                        a runtime error if its this value is not a Boolean
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                        object.  Therefore it cannot be transferred to other
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                        kinds of objects for use as a method.
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Author:             christine@netscape.com
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Date:               june 27, 1997
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*/
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var SECTION = "boolean-001.js";
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var VERSION = "JS1_4";
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var TITLE   = "Boolean.prototype.toString()";
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    startTest();
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    writeHeaderToLog( SECTION +" "+ TITLE );
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var tc = 0;
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var testcases = new Array();
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var exception = "No exception thrown";
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var result = "Failed";
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    var TO_STRING = Boolean.prototype.toString;
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    try {
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        var s = new String("Not a Boolean");
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        s.toString = TO_STRING;
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        s.toString();
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    } catch ( e ) {
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        result = "Passed!";
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        exception = e.toString();
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    testcases[tc++] = new TestCase(
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        SECTION,
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        "Assigning Boolean.prototype.toString to a String object "+
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        "(threw " +exception +")",
408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        "Passed!",
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        result );
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    test();
44