• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/*
17 * @tc.name:fortest
18 * @tc.desc:test for
19 * @tc.type: FUNC
20 * @tc.require: issueI5NO8G
21 */
22let a = '*'
23let s = ''
24
25for (let i = 0; i < 10; i++) {
26    s += a
27    print(s)
28}
29
30let i = 10
31
32while (i > 0) {
33    print(i);
34    i--;
35}
36
37function F0() {
38}
39const v5 = new F0();
40for (let index = 0; index < 32; index++) {
41    function F17() {
42        this.__proto__ = v5;
43    }
44    const v28 = new F17();
45    const v29 = "p" + index;
46    v5[v29] = index;
47}
48for (let k in v5) {
49    print(k, v5[k]);
50}
51
52function f0(v1, v2) {
53    try {
54        v1();
55    } catch (v5) {
56        print(v5)
57    }
58}
59
60try {
61    var v0 = function () { }.bind();
62} catch (e) {
63    print(e)
64}
65
66try {
67    Object.defineProperty(v0, "prototype", {
68        get() {
69            throw Error("OK");
70        }
71    });
72} catch (e) {
73    print(e)
74}
75
76try {
77[Array, Date, Boolean, Number, String, RegExp, Error, Uint8Array, ArrayBuffer, Map, WeakMap, Set, WeakSet].
78  forEach(function (v6) {
79    f0(() => {
80      Reflect.construct(v6, [], v0);
81    }, `Error: OK`);
82  });
83} catch (e) {
84    print(e)
85}
86