aboutsummaryrefslogtreecommitdiffstats
path: root/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects
diff options
context:
space:
mode:
Diffstat (limited to 'external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects')
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T1.js31
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T2.js42
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T3.js50
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T4.js51
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T5.js50
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A2.js19
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A1.js54
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A2.js29
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A3.js34
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A4.js19
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A1.js26
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A2.js16
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A3.js14
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A4.js20
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A1.js14
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A2.js15
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A3.js19
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.1_A1.js15
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T1.js46
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T2.js46
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T1.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T2.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T3.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T4.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T5.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T1.js40
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T2.js40
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T1.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T2.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T3.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T4.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T5.js38
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A1.js26
-rw-r--r--external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A2.js15
34 files changed, 1111 insertions, 0 deletions
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T1.js
new file mode 100644
index 000000000..16246b837
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T1.js
@@ -0,0 +1,31 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A1_T1;
+ * @section: 15.6.1.1;
+ * @assertion: Returns a boolean value (not a Boolean object) computed by
+ * ToBoolean(value);
+ * @description: Used values 1, new String("1"), new Object(1) and called without argument;
+*/
+
+//CHECK#1
+if( typeof Boolean() !== "boolean" ) {
+ $ERROR('#1: typeof Boolean() should be "boolean", actual is "'+typeof Boolean()+'"');
+}
+
+//CHECK#2
+if( typeof Boolean(1) !== "boolean" ) {
+ $ERROR('#2: typeof Boolean(1) should be "boolean", actual is "'+typeof Boolean(1)+'"');
+}
+
+//CHECK#3
+if( typeof Boolean(new String("1")) !== "boolean" ) {
+ $ERROR('#3: typeof Boolean(new String("1")) should be "boolean", actual is "'+typeof Boolean(new String("1"))+'"');
+}
+
+//CHECK#4
+if( typeof Boolean(new Object(1)) !== "boolean" ) {
+ $ERROR('#4: typeof Boolean(new Object(1)) should be "boolean", actual is "'+typeof Boolean(new Object(1))+'"');
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T2.js
new file mode 100644
index 000000000..3e4822bc9
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T2.js
@@ -0,0 +1,42 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A1_T2;
+ * @section: 15.6.1.1;
+ * @assertion: Returns a boolean value (not a Boolean object) computed by
+ * ToBoolean(value);
+ * @description: Used various number values as argument;
+*/
+
+//CHECK#1
+if( typeof Boolean(0) !== "boolean" ) {
+ $ERROR('#1.1: typeof Boolean(0) should be "boolean", actual is "'+typeof Boolean(0)+'"');
+}
+if( Boolean(0) !== false ) {
+ $ERROR('#1.2: Boolean(0) should be false, actual is '+Boolean(0));
+}
+
+//CHECK#2
+if( typeof Boolean(-1) !== "boolean" ) {
+ $ERROR('#2.1: typeof Boolean(-1) should be "boolean", actual is "'+typeof Boolean(-1)+'"');
+}
+if( Boolean(-1) !== true ) {
+ $ERROR('#2.2: Boolean(-1) should be true, actual is '+Boolean(-1));
+}
+
+//CHECK#3
+if( typeof Boolean(-Infinity) !== "boolean" ) {
+ $ERROR('#3.1: typeof Boolean(-Infinity) should be "boolean", actual is "'+typeof Boolean(-Infinity)+'"');
+}
+if( Boolean(-Infinity) !== true ) {
+ $ERROR('#3.2: Boolean(-Infinity) should be true, actual is '+Boolean(-Infinity));
+}
+
+//CHECK#4
+if( typeof Boolean(NaN) !== "boolean" ) {
+ $ERROR('#4.1: typeof Boolean(NaN) should be "boolean", actual is "'+typeof Boolean(NaN)+'"');
+}
+if( Boolean(NaN) !== false ) {
+ $ERROR('#4.2: Boolean(NaN) should be false, actual is '+Boolean(NaN));
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T3.js
new file mode 100644
index 000000000..d34d60503
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T3.js
@@ -0,0 +1,50 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A1_T3;
+ * @section: 15.6.1.1;
+ * @assertion: Returns a boolean value (not a Boolean object) computed by
+ * ToBoolean(value);
+ * @description: Used various string values as argument;
+*/
+
+//CHECK#1
+if( typeof Boolean("0") !== "boolean" ) {
+ $ERROR('#1.1: typeof Boolean("0") should be "boolean", actual is "'+typeof Boolean("0")+'"');
+}
+if( Boolean("0") !== true ) {
+ $ERROR('#1.2: Boolean("0") should be true');
+}
+
+//CHECK#2
+if( typeof Boolean("-1") !== "boolean" ) {
+ $ERROR('#2.1: typeof Boolean("-1") should be "boolean", actual is "'+typeof Boolean("-1")+'"');
+}
+if( Boolean("-1") !== true ) {
+ $ERROR('#2.2: Boolean("-1") should be true');
+}
+
+//CHECK#3
+if( typeof Boolean("1") !== "boolean" ) {
+ $ERROR('#3.1: typeof Boolean("1") should be "boolean", actual is "'+typeof Boolean("1")+'"');
+}
+if( Boolean("1") !== true ) {
+ $ERROR('#3.2: Boolean("1") should be true');
+}
+
+//CHECK#4
+if( typeof Boolean("false") !== "boolean" ) {
+ $ERROR('#4.1: typeof Boolean("false") should be "boolean", actual is "'+typeof Boolean("false")+'"');
+}
+if( Boolean("false") !== true ) {
+ $ERROR('#4.2: Boolean("false") should be true');
+}
+
+//CHECK#5
+if( typeof Boolean("true") !== "boolean" ) {
+ $ERROR('#5.1: typeof Boolean("true") should be "boolean", actual is "'+typeof Boolean("true")+'"');
+}
+if( Boolean("true") !== true ) {
+ $ERROR('#5.2: Boolean("true") should be true');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T4.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T4.js
new file mode 100644
index 000000000..468b8f11f
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T4.js
@@ -0,0 +1,51 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A1_T4;
+ * @section: 15.6.1.1;
+ * @assertion: Returns a boolean value (not a Boolean object) computed by
+ * ToBoolean(value);
+ * @description: Used various undefined values and null as argument;
+*/
+
+//CHECK#1
+if( typeof Boolean(undefined) !== "boolean" ) {
+ $ERROR('#1.1: typeof Boolean(undefined) should be "boolean", actual is "'+typeof Boolean(undefined)+'"');
+}
+if( Boolean(undefined) !== false ) {
+ $ERROR('#1.2: Boolean(undefined) should be false');
+}
+
+//CHECK#2
+if( typeof Boolean(void 0) !== "boolean" ) {
+ $ERROR('#2.1: typeof Boolean(void 0) should be "boolean", actual is "'+typeof Boolean(void 0)+'"');
+}
+if( Boolean(void 0) !== false ) {
+ $ERROR('#2.2: Boolean(void 0) should be false');
+}
+
+//CHECK#3
+if( typeof Boolean(function(){}()) !== "boolean" ) {
+ $ERROR('#3.1: typeof Boolean(function(){}()) should be "boolean", actual is "'+typeof Boolean(function(){}())+'"');
+}
+if( Boolean(function(){}()) !== false ) {
+ $ERROR('#3.2: Boolean(function(){}()) should be false');
+}
+
+//CHECK#4
+if( typeof Boolean(null) !== "boolean" ) {
+ $ERROR('#4.1: typeof Boolean(null) should be "boolean", actual is "'+typeof Boolean(null)+'"');
+}
+if( Boolean(null) !== false ) {
+ $ERROR('#4.2: Boolean(null) should be false');
+}
+
+//CHECK#5
+if( typeof Boolean(x) !== "boolean" ) {
+ $ERROR('#5.1: var x; typeof Boolean(x) should be "boolean", actual is "'+typeof Boolean(x)+'"');
+}
+if( Boolean(x) !== false ) {
+ $ERROR('#5.2: var x; Boolean(x) should be false');
+}
+var x;
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T5.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T5.js
new file mode 100644
index 000000000..d86561e14
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A1_T5.js
@@ -0,0 +1,50 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A1_T5;
+ * @section: 15.6.1.1;
+ * @assertion: Returns a boolean value (not a Boolean object) computed by
+ * ToBoolean(value);
+ * @description: Used various assigning values to any variable as argument;
+*/
+
+//CHECK#1
+if( typeof Boolean(x=0) !== "boolean" ) {
+ $ERROR('#1.1: typeof Boolean(x=0) should be "boolean", actual is "'+typeof Boolean(x=0)+'"');
+}
+if( Boolean(x=0) !== false ) {
+ $ERROR('#1.2: Boolean(x=0) should be false');
+}
+
+//CHECK#2
+if( typeof Boolean(x=1) !== "boolean" ) {
+ $ERROR('#2.1: typeof Boolean(x=1) should be "boolean", actual is "'+typeof Boolean(x=1)+'"');
+}
+if( Boolean(x=1) !== true ) {
+ $ERROR('#2.2: Boolean(x=1) should be true');
+}
+
+//CHECK#3
+if( typeof Boolean(x=false) !== "boolean" ) {
+ $ERROR('#3.1: typeof Boolean(x=false) should be "boolean", actual is "'+typeof Boolean(x=false)+'"');
+}
+if( Boolean(x=false) !== false ) {
+ $ERROR('#3.2: Boolean(x=false) should be false');
+}
+
+//CHECK#4
+if( typeof Boolean(x=true) !== "boolean" ) {
+ $ERROR('#4.1: typeof Boolean(x=true) should be "boolean", actual is "'+typeof Boolean(x=true)+'"');
+}
+if( Boolean(x=true) !== true ) {
+ $ERROR('#4.2: Boolean(x=true) should be true');
+}
+
+//CHECK#5
+if( typeof Boolean(x=null) !== "boolean" ) {
+ $ERROR('#5.1: typeof Boolean(x=null) should be "boolean", actual is "'+typeof Boolean(x=null)+'"');
+}
+if( Boolean(x=null) !== false ) {
+ $ERROR('#5.2: Boolean(x=null) should be false');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A2.js
new file mode 100644
index 000000000..719865783
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.1_The_Boolean_Constructor_Called_as_a_Function/S15.6.1.1_A2.js
@@ -0,0 +1,19 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.1.1_A2;
+ * @section: 15.6.1.1;
+ * @assertion: Boolean() returns false;
+ * @description: Call Boolean() and check result;
+*/
+
+//CHECK#1
+if( typeof Boolean() !== "boolean" ) {
+ $ERROR('#1: typeof Boolean() should be "boolean", actual is "'+typeof Boolean()+'"');
+}
+
+//CHECK#2
+if( Boolean() !== false ) {
+ $ERROR('#2: Boolean() should be false');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A1.js
new file mode 100644
index 000000000..5b23ea900
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A1.js
@@ -0,0 +1,54 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.2.1_A1;
+ * @section: 15.6.2.1;
+ * @assertion: When Boolean is called as part of a new expression it is
+ * a constructor: it initialises the newly created object;
+ * @description: Checking type of the newly created object and it value;
+*/
+
+//CHECK#1
+if (typeof new Boolean() !== "object") {
+ $ERROR("#1: typeof new Boolean() === 'object'");
+}
+
+//CHECK#2
+if (new Boolean() === undefined) {
+ $ERROR("#2: new Boolean() should not be undefined");
+}
+
+//CHECK#3
+var x3 = new Boolean();
+if(typeof x3 !== "object"){
+ $ERROR("#3: typeof new Boolean() !== 'object'");
+}
+
+//CHECK#4
+var x4 = new Boolean();
+if(x4 === undefined){
+ $ERROR("#4: new Boolean() should not be undefined");
+}
+
+//CHECK#5
+if (typeof new Boolean(1) !== "object") {
+ $ERROR("#5: typeof new Boolean(10) === 'object'");
+}
+
+//CHECK#6
+if (new Boolean(1) === undefined) {
+ $ERROR("#6: new Boolean(1) should not be undefined");
+}
+
+//CHECK#7
+var x7 = new Boolean(1);
+if(typeof x7 !== "object"){
+ $ERROR("#7: typeof new Boolean(1) !== 'object'");
+}
+
+//CHECK#8
+var x8 = new Boolean(1);
+if(x8 === undefined){
+ $ERROR("#8: new Boolean(1) should not be undefined");
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A2.js
new file mode 100644
index 000000000..59d1439e7
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A2.js
@@ -0,0 +1,29 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.2.1_A2;
+ * @section: 15.6.2.1;
+ * @assertion: The [[Prototype]] property of the newly constructed object
+ * is set to the original Boolean prototype object, the one that is the
+ * initial value of Boolean.prototype;
+ * @description: Checking prototype property of the newly created object;
+ */
+
+// CHECK#1
+var x1 = new Boolean(1);
+if (typeof x1.constructor.prototype !== "object") {
+ $ERROR('#1: typeof x1.constructor.prototype === "object"');
+}
+
+//CHECK#2
+var x2 = new Boolean(2);
+if (!Boolean.prototype.isPrototypeOf(x2)) {
+ $ERROR('#2: Boolean.prototype.isPrototypeOf(x2)');
+}
+
+//CHECK#3
+var x3 = new Boolean(3);
+if (Boolean.prototype !== x3.constructor.prototype) {
+ $ERROR('#3: Boolean.prototype === x3.constructor.prototype');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A3.js
new file mode 100644
index 000000000..9f4f0c60c
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A3.js
@@ -0,0 +1,34 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.2.1_A3;
+ * @section: 15.6.2.1;
+ * @assertion: The [[Value]] property of the newly constructed object
+ * is set to ToBoolean(value);
+ * @description: Checking value of the newly created object;
+ */
+
+// CHECK#1
+var x1 = new Boolean(1);
+if (x1.valueOf() !== true) {
+ $ERROR('#1: var x1 = new Boolean(1); x1.valueOf() === true');
+}
+
+//CHECK#2
+var x2 = new Boolean();
+if (x2.valueOf() !== false) {
+ $ERROR('#2: var x2 = new Boolean(); x2.valueOf() === false');
+}
+
+//CHECK#3
+var x2 = new Boolean(0);
+if (x2.valueOf() !== false) {
+ $ERROR('#3: var x2 = new Boolean(0); x2.valueOf() === false');
+}
+
+//CHECK#4
+var x2 = new Boolean(new Object());
+if (x2.valueOf() !== true) {
+ $ERROR('#4: var x2 = new Boolean(new Object()); x2.valueOf() === true');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A4.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A4.js
new file mode 100644
index 000000000..1aa660a79
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.2_The_Boolean_Constructor/S15.6.2.1_A4.js
@@ -0,0 +1,19 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.2.1_A4;
+ * @section: 15.6.2.1;
+ * @assertion: The [[Class]] property of the newly constructed object
+ * is set to "Boolean";
+ * @description: For testing toString function is used;
+ */
+
+delete Boolean.prototype.toString;
+
+var obj = new Boolean();
+
+//CHECK#1
+if (obj.toString() !== "[object Boolean]") {
+ $ERROR('#1: The [[Class]] property of the newly constructed object is set to "Boolean"');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A1.js
new file mode 100644
index 000000000..50bef718f
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A1.js
@@ -0,0 +1,26 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.3.1_A1;
+ * @section: 15.6.3.1;
+ * @assertion: The initial value of Boolean.prototype is the Boolean
+ * prototype object;
+ * @description: Checking Boolean.prototype property;
+ */
+
+//CHECK#1
+if (typeof Boolean.prototype !== "object") {
+ $ERROR('#1: typeof Boolean.prototype === "object"');
+}
+
+//CHECK#2
+if (Boolean.prototype != false) {
+ $ERROR('#2: Boolean.prototype == false');
+}
+
+delete Boolean.prototype.toString;
+
+if (Boolean.prototype.toString() !== "[object Boolean]") {
+ $ERROR('#3: The [[Class]] property of the Boolean prototype object is set to "Boolean"');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A2.js
new file mode 100644
index 000000000..373f54e96
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A2.js
@@ -0,0 +1,16 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.3.1_A2;
+ * @section: 15.6.3.1;
+ * @assertion: Boolean.prototype has the attribute ReadOnly;
+ * @description: Checking if varying the Boolean.prototype property fails;
+ */
+
+// CHECK#1
+x = Boolean.prototype;
+Boolean.prototype = 1;
+if (Boolean.prototype !== x) {
+ $ERROR('#1: Boolean.prototype has the attribute ReadOnly');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A3.js
new file mode 100644
index 000000000..6158ea0de
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A3.js
@@ -0,0 +1,14 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.3.1_A3;
+ * @section: 15.6.3.1;
+ * @assertion: Boolean.prototype has the attribute DontDelete;
+ * @description: Checking if deleting the Boolean.prototype property fails;
+ */
+
+// CHECK#1
+if (delete Boolean.prototype !== false) {
+ $ERROR('#1: Boolean.prototype has the attribute DontDelete');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A4.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A4.js
new file mode 100644
index 000000000..236266aac
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/15.6.3.1_Boolean.prototype/S15.6.3.1_A4.js
@@ -0,0 +1,20 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.3.1_A4;
+ * @section: 15.6.3.1;
+ * @assertion: Boolean.prototype has the attribute DontEnum;
+ * @description: Checking if enumerating the Boolean.prototype property fails;
+ */
+
+//CHECK#1
+for(x in Boolean) {
+ if(x === "prototype") {
+ $ERROR('#1: Boolean.prototype has the attribute DontEnum');
+ }
+}
+
+if (Boolean.propertyIsEnumerable('prototype')) {
+ $ERROR('#2: Boolean.prototype has the attribute DontEnum');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A1.js
new file mode 100644
index 000000000..673d7c050
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A1.js
@@ -0,0 +1,14 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.3_A1;
+ * @section: 15.6.3;
+ * @assertion: The Boolean constructor has the property "prototype";
+ * @description: Checking existence of the property "prototype";
+ */
+
+if(!Boolean.hasOwnProperty("prototype")){
+ $ERROR('#1: The Boolean constructor has the property "prototype"');
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A2.js
new file mode 100644
index 000000000..02415f8db
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A2.js
@@ -0,0 +1,15 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+* @name: S15.6.3_A2;
+* @section: 15.6.3;
+* @assertion: The value of the internal [[Prototype]] property of the Boolean
+* constructor is the Function prototype object;
+* @description: Checking prototype of the Boolean constructor;
+*/
+
+//CHECK#1
+if (!(Function.prototype.isPrototypeOf(Boolean))) {
+ $ERROR('#1: the value of the internal [[Prototype]] property of the Boolean constructor is the Function prototype object.');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A3.js
new file mode 100644
index 000000000..ab1b1e953
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.3_Properties_of_the_Boolean_Constructor/S15.6.3_A3.js
@@ -0,0 +1,19 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+* @name: S15.6.3_A3;
+* @section: 15.6.3;
+* @assertion: Boolean constructor has length property whose value is 1;
+* @description: Checking Boolean.length property;
+*/
+
+//CHECK#1
+if (!Boolean.hasOwnProperty("length")){
+ $ERROR('#1: Boolean constructor has length property');
+}
+
+//CHECK#2
+if (Boolean.length !== 1) {
+ $ERROR('#2: Boolean constructor length property value is 1');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.1_A1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.1_A1.js
new file mode 100644
index 000000000..de366a7cd
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.1_A1.js
@@ -0,0 +1,15 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.1_A1;
+ * @section: 15.6.4.1;
+ * @assertion: The initial value of Boolean.prototype.constructor is the
+ * built-in Boolean constructor;
+ * @description: Compare Boolean.prototype.constructor with Boolean;
+ */
+
+//CHECK#1
+if(Boolean.prototype.constructor !== Boolean){
+ $ERROR('#1: Boolean.prototype.constructor === Boolean');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T1.js
new file mode 100644
index 000000000..93f8590b8
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T1.js
@@ -0,0 +1,46 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A1_T1;
+ * @section: 15.6.4.2;
+ * @assertion: toString: If this boolean value is true, then the string "true"
+ * is returned, otherwise, this boolean value must be false, and the string
+ * "false" is returned;
+ * @description: no arguments;
+ */
+
+//CHECK#1
+if(Boolean.prototype.toString() !== "false"){
+ $ERROR('#1: Boolean.prototype.toString() === "false"');
+}
+
+//CHECK#2
+if((new Boolean()).toString() !== "false"){
+ $ERROR('#2: (new Boolean()).toString() === "false"');
+}
+
+//CHECK#3
+if((new Boolean(false)).toString() !== "false"){
+ $ERROR('#3: (new Boolean(false)).toString() === "false"');
+}
+
+//CHECK#4
+if((new Boolean(true)).toString() !== "true"){
+ $ERROR('#4: (new Boolean(true)).toString() === "true"');
+}
+
+//CHECK#5
+if((new Boolean(1)).toString() !== "true"){
+ $ERROR('#5: (new Boolean(1)).toString() === "true"');
+}
+
+//CHECK#6
+if((new Boolean(0)).toString() !== "false"){
+ $ERROR('#6: (new Boolean(0)).toString() === "false"');
+}
+
+//CHECK#7
+if((new Boolean(new Object())).toString() !== "true"){
+ $ERROR('#7: (new Boolean(new Object())).toString() === "true"');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T2.js
new file mode 100644
index 000000000..d28f196f6
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A1_T2.js
@@ -0,0 +1,46 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A1_T2;
+ * @section: 15.6.4.2;
+ * @assertion: toString: If this boolean value is true, then the string "true"
+ * is returned, otherwise, this boolean value must be false, and the string
+ * "false" is returned;
+ * @description: with some argument;
+ */
+
+//CHECK#1
+if(Boolean.prototype.toString(true) !== "false"){
+ $ERROR('#1: Boolean.prototype.toString(true) === "false"');
+}
+
+//CHECK#2
+if((new Boolean()).toString(true) !== "false"){
+ $ERROR('#2: (new Boolean()).toString(true) === "false"');
+}
+
+//CHECK#3
+if((new Boolean(false)).toString(true) !== "false"){
+ $ERROR('#3: (new Boolean(false)).toString(true) === "false"');
+}
+
+//CHECK#4
+if((new Boolean(true)).toString(false) !== "true"){
+ $ERROR('#4: (new Boolean(true)).toString(false) === "true"');
+}
+
+//CHECK#5
+if((new Boolean(1)).toString(false) !== "true"){
+ $ERROR('#5: (new Boolean(1)).toString(false) === "true"');
+}
+
+//CHECK#6
+if((new Boolean(0)).toString(true) !== "false"){
+ $ERROR('#6: (new Boolean(0)).toString(true) === "false"');
+}
+
+//CHECK#7
+if((new Boolean(new Object())).toString(false) !== "true"){
+ $ERROR('#7: (new Boolean(new Object())).toString(false) === "true"');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T1.js
new file mode 100644
index 000000000..26c0a0003
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T1.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A2_T1;
+ * @section: 15.6.4.2;
+ * @assertion: The toString function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the String objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new String();
+ s1.toString = Boolean.prototype.toString;
+ var v1 = s1.toString();
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#2
+try{
+ var s2 = new String();
+ s2.myToString = Boolean.prototype.toString;
+ var v2 = s2.myToString();
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T2.js
new file mode 100644
index 000000000..5fba5e924
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T2.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A2_T2;
+ * @section: 15.6.4.2;
+ * @assertion: The toString function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Number objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Number();
+ s1.toString = Boolean.prototype.toString;
+ var v1 = s1.toString();
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Number();
+ s2.myToString = Boolean.prototype.toString;
+ var v2 = s2.myToString();
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T3.js
new file mode 100644
index 000000000..25facab8a
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T3.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A2_T3;
+ * @section: 15.6.4.2;
+ * @assertion: The toString function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Date objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Date();
+ s1.toString = Boolean.prototype.toString;
+ var v1 = s1.toString();
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Date();
+ s2.myToString = Boolean.prototype.toString;
+ var v2 = s2.myToString();
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T4.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T4.js
new file mode 100644
index 000000000..eab0866cc
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T4.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A2_T4;
+ * @section: 15.6.4.2;
+ * @assertion: The toString function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Object objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Object();
+ s1.toString = Boolean.prototype.toString;
+ var v1 = s1.toString();
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Object();
+ s2.myToString = Boolean.prototype.toString;
+ var v2 = s2.myToString();
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T5.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T5.js
new file mode 100644
index 000000000..6978c515d
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.2_A2_T5.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.2_A2_T5;
+ * @section: 15.6.4.2;
+ * @assertion: The toString function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the other objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = {x: 1};
+ s1.toString = Boolean.prototype.toString;
+ var v1 = s1.toString();
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = {x: 1};
+ s2.myToString = Boolean.prototype.toString;
+ var v2 = s2.myToString();
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.toString on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T1.js
new file mode 100644
index 000000000..25ece6d6e
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T1.js
@@ -0,0 +1,40 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A1_T1;
+ * @section: 15.6.4.3;
+ * @assertion: Boolean.prototype.valueOf() returns this boolean value;
+ * @description: no arguments;
+*/
+
+//CHECK#1
+if(Boolean.prototype.valueOf() !== false){
+ $ERROR('#1: Boolean.prototype.valueOf() === false');
+}
+
+//CHECK#2
+if((new Boolean()).valueOf() !== false){
+ $ERROR('#2: (new Boolean()).valueOf() === false');
+}
+
+//CHECK#3
+if((new Boolean(0)).valueOf() !== false){
+ $ERROR('#3: (new Boolean(0)).valueOf() === false');
+}
+
+//CHECK#4
+if((new Boolean(-1)).valueOf() !== true){
+ $ERROR('#4: (new Boolean(-1)).valueOf() === true');
+}
+
+//CHECK#5
+if((new Boolean(1)).valueOf() !== true){
+ $ERROR('#5: (new Boolean(1)).valueOf() === true');
+}
+
+//CHECK#6
+if((new Boolean(new Object())).valueOf() !== true){
+ $ERROR('#6: (new Boolean(new Object())).valueOf() === true');
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T2.js
new file mode 100644
index 000000000..77362c781
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A1_T2.js
@@ -0,0 +1,40 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A1_T2;
+ * @section: 15.6.4.3;
+ * @assertion: Boolean.prototype.valueOf() returns this boolean value;
+ * @description: calling with argument;
+*/
+
+//CHECK#1
+if(Boolean.prototype.valueOf(true) !== false){
+ $ERROR('#1: Boolean.prototype.valueOf(true) === false');
+}
+
+//CHECK#2
+if((new Boolean()).valueOf(true) !== false){
+ $ERROR('#2: (new Boolean()).valueOf(true) === false');
+}
+
+//CHECK#3
+if((new Boolean(0)).valueOf(true) !== false){
+ $ERROR('#3: (new Boolean(0)).valueOf(true) === false');
+}
+
+//CHECK#4
+if((new Boolean(-1)).valueOf(false) !== true){
+ $ERROR('#4: (new Boolean(-1)).valueOf(false) === true');
+}
+
+//CHECK#5
+if((new Boolean(1)).valueOf(false) !== true){
+ $ERROR('#5: (new Boolean(1)).valueOf(false) === true');
+}
+
+//CHECK#6
+if((new Boolean(new Object())).valueOf(false) !== true){
+ $ERROR('#6: (new Boolean(new Object())).valueOf(false) === true');
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T1.js
new file mode 100644
index 000000000..08b61cbd0
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T1.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A2_T1;
+ * @section: 15.6.4.3;
+ * @assertion: The valueOf function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the String objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new String();
+ s1.valueOf = Boolean.prototype.valueOf;
+ var v1 = s1.valueOf();
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new String();
+ s2.myValueOf = Boolean.prototype.valueOf;
+ var v2 = s2.myValueOf();
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T2.js
new file mode 100644
index 000000000..69d39940b
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T2.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A2_T2;
+ * @section: 15.6.4.3;
+ * @assertion: The valueOf function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Number objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Number();
+ s1.valueOf = Boolean.prototype.valueOf;
+ var v1 = s1.valueOf();
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Number();
+ s2.myValueOf = Boolean.prototype.valueOf;
+ var v2 = s2.myValueOf();
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T3.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T3.js
new file mode 100644
index 000000000..3393c28ef
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T3.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A2_T3;
+ * @section: 15.6.4.3;
+ * @assertion: The valueOf function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Date objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Date();
+ s1.valueOf = Boolean.prototype.valueOf;
+ var v1 = s1.valueOf();
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Date();
+ s2.myValueOf = Boolean.prototype.valueOf;
+ var v2 = s2.myValueOf();
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T4.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T4.js
new file mode 100644
index 000000000..d1d277000
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T4.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A2_T4;
+ * @section: 15.6.4.3;
+ * @assertion: The valueOf function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the Object objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = new Object();
+ s1.valueOf = Boolean.prototype.valueOf;
+ var v1 = s1.valueOf();
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = new Object();
+ s2.myValueOf = Boolean.prototype.valueOf;
+ var v2 = s2.myValueOf();
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T5.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T5.js
new file mode 100644
index 000000000..4922cf395
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4.3_A2_T5.js
@@ -0,0 +1,38 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4.3_A2_T5;
+ * @section: 15.6.4.3;
+ * @assertion: The valueOf function is not generic, it cannot be transferred
+ * to other kinds of objects for use as a method and there is should be
+ * a TypeError exception if its this value is not a Boolean object;
+ * @description: transferring to the other objects;
+*/
+
+//CHECK#1
+try{
+ var s1 = {x: 1};
+ s1.valueOf = Boolean.prototype.valueOf;
+ var v1 = s1.valueOf();
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#1: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
+//CHECK#1
+try{
+ var s2 = {x: 1};
+ s2.myValueOf = Boolean.prototype.valueOf;
+ var v2 = s2.myValueOf();
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError');
+}
+catch(e){
+ if(!(e instanceof TypeError)){
+ $ERROR('#2: Boolean.prototype.valueOf on not a Boolean object should throw TypeError, not '+e);
+ }
+}
+
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A1.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A1.js
new file mode 100644
index 000000000..7af82b2a4
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A1.js
@@ -0,0 +1,26 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4_A1;
+ * @section: 15.6.4;
+ * @assertion: The Boolean prototype object is itself a Boolean object
+ * (its [[Class]] is "Boolean") whose value is false;
+ * @description: Checking type and value of Boolean.prototype;
+ */
+
+//CHECK#1
+if (typeof Boolean.prototype !== "object") {
+ $ERROR('#1: typeof Boolean.prototype === "object"');
+}
+
+//CHECK#2
+if (Boolean.prototype != false) {
+ $ERROR('#2: Boolean.prototype == false');
+}
+
+delete Boolean.prototype.toString;
+
+if (Boolean.prototype.toString() !== "[object Boolean]") {
+ $ERROR('#3: The [[Class]] property of the Boolean prototype object is set to "Boolean"');
+}
diff --git a/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A2.js b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A2.js
new file mode 100644
index 000000000..515d1f436
--- /dev/null
+++ b/external/contributions/Google/sputniktests/tests/Conformance/15_Native_ECMA_Script_Objects/15.6_Boolean_Objects/15.6.4_Properties_of_the_Boolean_Prototype_Object/S15.6.4_A2.js
@@ -0,0 +1,15 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S15.6.4_A2;
+ * @section: 15.6.4;
+ * @assertion: The value of the internal [[Prototype]] property of the Boolean
+ * prototype object is the Object prototype object;
+ * @description: Checking Object.prototype.isPrototypeOf(Boolean.prototype);
+ */
+
+//CHECK#1
+if (!Object.prototype.isPrototypeOf(Boolean.prototype)) {
+ $ERROR('#1: Object prototype object is the prototype of Boolean prototype object');
+}