mirror of
https://github.com/tc39/test262.git
synced 2025-05-20 14:50:28 +02:00
The modified tests are equally valid in strict mode and outside of strict mode. Remove the flag which limits their use to only one of these two contexts. Rename tests using the legacy ES5-based naming scheme to remove the pattern which designates strict mode.
23 lines
912 B
JavaScript
23 lines
912 B
JavaScript
// Copyright 2009 the Sputnik authors. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
info: |
|
|
Being in function code, "this" and eval("this"), called as a
|
|
constructors, return the object
|
|
es5id: 11.1.1_A3.2
|
|
description: Create function. It have property, that returned "this"
|
|
---*/
|
|
|
|
//CHECK#1
|
|
function SetThis() {this.THIS = this}
|
|
if ((new SetThis()).THIS.toString() !== "[object Object]") {
|
|
$ERROR('#1: function SetThis() {this.THIS = this} (new SetThis()).THIS.toString() !== "[object Object]". Actual: ' + ((new SetThis()).THIS.toString()));
|
|
}
|
|
|
|
//CHECK#2
|
|
function SetEvalThis() {this.THIS = eval("this")}
|
|
if ((new SetEvalThis()).THIS.toString() !== "[object Object]") {
|
|
$ERROR('#2: function SetEvalThis() {this.THIS = eval("this")} (new SetEvalThis()).THIS.toString() !== "[object Object]". Actual: ' + ((new SetEvalThis()).THIS.toString()));
|
|
}
|