Home | History | Annotate | Download | only in String
      1 /* The contents of this file are subject to the Netscape Public
      2  * License Version 1.1 (the "License"); you may not use this file
      3  * except in compliance with the License. You may obtain a copy of
      4  * the License at http://www.mozilla.org/NPL/
      5  *
      6  * Software distributed under the License is distributed on an "AS
      7  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
      8  * implied. See the License for the specific language governing
      9  * rights and limitations under the License.
     10  *
     11  * The Original Code is Mozilla Communicator client code, released March
     12  * 31, 1998.
     13  *
     14  * The Initial Developer of the Original Code is Netscape Communications
     15  * Corporation. Portions created by Netscape are
     16  * Copyright (C) 1998 Netscape Communications Corporation. All
     17  * Rights Reserved.
     18  *
     19  * Contributor(s):
     20  *
     21  */
     22 /**
     23     File Name:          15.5.3.1.js
     24     ECMA Section:       15.5.3 Properties of the String Constructor
     25 
     26     Description:	    The value of the internal [[Prototype]] property of
     27                         the String constructor is the Function prototype
     28                         object.
     29 
     30                         In addition to the internal [[Call]] and [[Construct]]
     31                         properties, the String constructor also has the length
     32                         property, as well as properties described in 15.5.3.1
     33                         and 15.5.3.2.
     34 
     35     Author:             christine (at) netscape.com
     36     Date:               1 october 1997
     37 */
     38 
     39     var SECTION = "15.5.3";
     40     var VERSION = "ECMA_2";
     41     startTest();
     42     var passed = true;
     43     writeHeaderToLog( SECTION + " Properties of the String Constructor" );
     44 
     45     var testcases = getTestCases();
     46     var tc= 0;
     47 
     48 //  all tests must call a function that returns an array of TestCase objects.
     49     test( testcases );
     50 
     51 function getTestCases() {
     52     var array = new Array();
     53     var item = 0;
     54 
     55     array[item++] = new TestCase( SECTION,	"String.prototype",             Function.prototype,     String.__proto__ );
     56     array[item++] = new TestCase( SECTION,	"String.length",                1,                      String.length );
     57     return ( array );
     58 }
     59 function test( array ) {
     60     for ( tc=0; tc < testcases.length; tc++ ) {
     61         testcases[tc].passed = writeTestCaseResult(
     62                             testcases[tc].expect,
     63                             testcases[tc].actual,
     64                             testcases[tc].description +" = "+ testcases[tc].actual );
     65 
     66         testcases[tc].reason += ( testcases[tc].passed ) ? "" : "wrong value ";
     67     }
     68 
     69     stopTest();
     70 
     71     //  all tests must return an array of TestCase objects
     72         return ( testcases );
     73 }
     74 
     75