aboutsummaryrefslogtreecommitdiffstats
path: root/test/suite/sputnik/Conformance/09_Type_Conversion/9.9_ToObject/S9.9_A1.js
blob: 5e6be1d8f7238693437b2e627e7cda9185e91364 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/**
 * @name: S9.9_A1;
 * @section: 9.9;
 * @assertion: ToObject conversion from undefined value must throw TypeError;
 * @description: Trying to convert undefined to Object; 
*/

// CHECK#1
try{
  undefined['foo'];
  $ERROR('#1.1: undefined[\'foo\'] must throw TypeError. Actual: ' + (undefined['foo']));
} 
catch(e){
  if((e instanceof TypeError) !== true){
    $ERROR('#1.2: undefined[\'foo\'] must throw TypeError. Actual: ' + (e));
  }
}

// CHECK#2
try{
  with(undefined) x = 2;
  $ERROR('#2.1: with(undefined) x = 2 must throw TypeError. Actual: x === ' + (x));
} 
catch(e){
  if((e instanceof TypeError) !== true){
    $ERROR('#2.2: with(undefined) x = 2 must throw TypeError. Actual: ' + (e));
  }
}

// CHECK#3
try{
  for(var y in undefined) y = 2;
  $ERROR('#3.1: for(var y in undefined) y = 2 must throw TypeError. Actual: y === ' + (y));
} 
catch(e){
  if((e instanceof TypeError) !== true){
    $ERROR('#3.2: for(var y in undefined) y = 2 must throw TypeError. Actual: ' + (e));
  }
}

// CHECK#4
try{
  for(var z in this.foo) z = 2;
  $ERROR('#4.1: for(var z in this.foo) z = 2 must throw TypeError. Actual: z === ' + (z));
} 
catch(e){
  if((e instanceof TypeError) !== true){
    $ERROR('#4.2: for(var z in this.foo) z = 2 must throw TypeError. Actual: ' + (e));
  }
}