test/nashorn/script/assert.js
author tschatzl
Mon, 26 Mar 2018 16:51:43 +0200
changeset 49608 1852b17b0efc
parent 47216 71c04702a3d5
permissions -rw-r--r--
8196485: FromCardCache default card index can cause crashes Summary: The default value of -1 for 32 bit card indices is a regular card value at the border of 2TB heap addresses in the from card cache, so G1 may loose remembered set entries. Extend from card cache entries to 64 bits. Reviewed-by: shade, sjohanss Contributed-by: Thomas Schatzl <thomas.schatzl@oracle.com>, Jarkko Miettinen <jarkko.miettinen@relex.fi>
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     1
/*
16151
97c1e756ae1e 8005663: Update copyright year to 2013
jlaskey
parents: 16147
diff changeset
     2
 * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
     4
 *
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     7
 * published by the Free Software Foundation.
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
     8
 *
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    13
 * accompanied this code).
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
    14
 *
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
    18
 *
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    21
 * questions.
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    22
 */
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    23
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    24
/**
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    25
 * This is not a test - but a framework to run other tests.
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    26
 *
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    27
 * @subtest
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    28
 */
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    29
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    30
// Assert is TestNG's Assert class
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
    31
Object.defineProperty(this, "Assert", {
24719
f726e9d67629 8035820: Optimistic recompilation
attila
parents: 20929
diff changeset
    32
    configurable: true,
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    33
    enumerable: false,
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    34
    writable: true,
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    35
    value: Packages.org.testng.Assert
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    36
});
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    37
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    38
// fail function to call TestNG Assert.fail
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    39
Object.defineProperty(this, "fail", {
24719
f726e9d67629 8035820: Optimistic recompilation
attila
parents: 20929
diff changeset
    40
    configurable: true,
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    41
    enumerable: false,
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    42
    writable: true,
24778
2ff5d7041566 8044638: Tidy up Nashorn codebase for code standards
attila
parents: 24719
diff changeset
    43
    // 'error' is optional. if present it has to be
16147
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    44
    // an ECMAScript Error object or java Throwable object
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    45
    value: function (message, error) {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    46
        var throwable = null;
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    47
        if (typeof error != 'undefined') {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    48
            if (error instanceof java.lang.Throwable) {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    49
                throwable = error;
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    50
            } else if (error.nashornException instanceof java.lang.Throwable) {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    51
                throwable = error.nashornException;
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    52
            }
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    53
        }
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    54
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    55
        if (throwable != null) {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    56
            // call the fail version that accepts Throwable argument
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    57
            Assert.fail(message, throwable);
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    58
        } else {
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    59
            // call the fail version that accepts just message
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    60
            Assert.fail(message);
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    61
        }
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    62
    }
e63b63819133 8005403: Open-source Nashorn
jlaskey
parents:
diff changeset
    63
});
20929
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    64
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    65
Object.defineProperty(this, "printError", {
24719
f726e9d67629 8035820: Optimistic recompilation
attila
parents: 20929
diff changeset
    66
    configurable: true,
20929
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    67
    enumerable: false,
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    68
    writable: true,
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    69
    value: function (e) {
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    70
        var msg = e.message;
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    71
        var str = e.name + ':';
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    72
        if (e.lineNumber > 0) {
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    73
            str += e.lineNumber + ':';
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    74
        }
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    75
        if (e.columnNumber > 0) {
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    76
            str += e.columnNumber + ':';
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    77
        }
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    78
        str += msg.substring(msg.indexOf(' ') + 1);
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    79
        print(str);
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    80
    }
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    81
});
f2bd18181940 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases.
sundar
parents: 16151
diff changeset
    82