~ubuntu-branches/ubuntu/raring/qtwebkit-source/raring-proposed

« back to all changes in this revision

Viewing changes to Source/JavaScriptCore/tests/mozilla/ecma_3/Object/class-001.js

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2013-02-18 14:24:18 UTC
  • Revision ID: package-import@ubuntu.com-20130218142418-eon0jmjg3nj438uy
Tags: upstream-2.3
ImportĀ upstreamĀ versionĀ 2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
* The contents of this file are subject to the Netscape Public
 
3
* License Version 1.1 (the "License"); you may not use this file
 
4
* except in compliance with the License. You may obtain a copy of
 
5
* the License at http://www.mozilla.org/NPL/
 
6
*
 
7
* Software distributed under the License is distributed on an "AS IS" 
 
8
* basis, WITHOUT WARRANTY OF ANY KIND, either expressed
 
9
* or implied. See the License for the specific language governing
 
10
* rights and limitations under the License.
 
11
*
 
12
* The Original Code is mozilla.org code.
 
13
*
 
14
* The Initial Developer of the Original Code is Netscape
 
15
* Communications Corporation.  Portions created by Netscape are
 
16
* Copyright (C) 1998 Netscape Communications Corporation. All
 
17
* Rights Reserved.
 
18
*
 
19
* Contributor(s): pschwartau@netscape.com
 
20
* Date: 14 Mar 2001
 
21
*
 
22
* SUMMARY: Testing the internal [[Class]] property of objects
 
23
* See ECMA-262 Edition 3 13-Oct-1999, Section 8.6.2
 
24
*
 
25
* The getJSClass() function we use is in a utility file, e.g. "shell.js".
 
26
*/
 
27
//-------------------------------------------------------------------------------------------------
 
28
var i = 0;
 
29
var UBound = 0;
 
30
var bug = '(none)';
 
31
var summary = 'Testing the internal [[Class]] property of objects';
 
32
var statprefix = 'Current object is: ';
 
33
var status = ''; var statusList = [ ];
 
34
var actual = ''; var actualvalue = [ ];
 
35
var expect= ''; var expectedvalue = [ ];
 
36
 
 
37
 
 
38
status = 'the global object';
 
39
actual = getJSClass(this);
 
40
expect = 'global';
 
41
addThis();
 
42
 
 
43
status = 'new Object()';
 
44
actual = getJSClass(new Object());
 
45
expect = 'Object';
 
46
addThis();
 
47
 
 
48
status = 'new Function()';
 
49
actual = getJSClass(new Function());
 
50
expect = 'Function';
 
51
addThis();
 
52
 
 
53
status = 'new Array()';
 
54
actual = getJSClass(new Array());
 
55
expect = 'Array';
 
56
addThis();
 
57
 
 
58
status = 'new String()';
 
59
actual = getJSClass(new String());
 
60
expect = 'String';
 
61
addThis();
 
62
 
 
63
status = 'new Boolean()';
 
64
actual = getJSClass(new Boolean());
 
65
expect = 'Boolean';
 
66
addThis();
 
67
 
 
68
status = 'new Number()';
 
69
actual = getJSClass(new Number());
 
70
expect = 'Number';
 
71
addThis();
 
72
 
 
73
status = 'Math';
 
74
actual = getJSClass(Math);  // can't use 'new' with the Math object (EMCA3, 15.8)
 
75
expect = 'Math';
 
76
addThis();
 
77
 
 
78
status = 'new Date()';
 
79
actual = getJSClass(new Date());
 
80
expect = 'Date';
 
81
addThis();
 
82
 
 
83
status = 'new RegExp()';
 
84
actual = getJSClass(new RegExp());
 
85
expect = 'RegExp';
 
86
addThis();
 
87
 
 
88
status = 'new Error()';
 
89
actual = getJSClass(new Error());
 
90
expect = 'Error';
 
91
addThis();
 
92
 
 
93
 
 
94
 
 
95
//---------------------------------------------------------------------------------
 
96
test();
 
97
//---------------------------------------------------------------------------------
 
98
 
 
99
 
 
100
 
 
101
function addThis()
 
102
{
 
103
  statusList[UBound] = status;
 
104
  actualvalue[UBound] = actual;
 
105
  expectedvalue[UBound] = expect;
 
106
  UBound++;
 
107
}
 
108
 
 
109
 
 
110
function test()
 
111
{
 
112
  enterFunc ('test');
 
113
  printBugNumber (bug);
 
114
  printStatus (summary);
 
115
 
 
116
  for (i = 0; i < UBound; i++)
 
117
  {
 
118
    reportCompare(expectedvalue[i], actualvalue[i], getStatus(i));
 
119
  }
 
120
 
 
121
  exitFunc ('test');
 
122
}
 
123
 
 
124
 
 
125
function getStatus(i)
 
126
{
 
127
  return statprefix + statusList[i];
 
128
}