test/script/basic/JDK-8011756.js

Wed, 27 Apr 2016 01:36:41 +0800

author
aoqi
date
Wed, 27 Apr 2016 01:36:41 +0800
changeset 0
b1a7da25b547
child 962
ac62e33a99b0
permissions
-rw-r--r--

Initial load
http://hg.openjdk.java.net/jdk8u/jdk8u/nashorn/
changeset: 1034:4b9cc65dd24d
tag: jdk8u25-b17

     1 /*
     2  * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  * 
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     8  * 
     9  * This code is distributed in the hope that it will be useful, but WITHOUT
    10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    12  * version 2 for more details (a copy is included in the LICENSE file that
    13  * accompanied this code).
    14  * 
    15  * You should have received a copy of the GNU General Public License version
    16  * 2 along with this work; if not, write to the Free Software Foundation,
    17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    18  * 
    19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    20  * or visit www.oracle.com if you need additional information or have any
    21  * questions.
    22  */
    24 /**
    25  * JDK-8011756: Wrong characters supported in RegExp \c escape
    26  *
    27  * @test
    28  * @run
    29  */
    32 // Invalid control letters should be escaped:
    33 print(/\cı/.test("\x09"));
    34 print(/\cı/.test("\\cı"));
    36 print(/\cſ/.test("\x13"));
    37 print(/\cſ/.test("\\cſ"));
    39 print(/[\cſ]/.test("\x13"));
    40 print(/[\cſ]/.test("\\"));
    41 print(/[\cſ]/.test("c"));
    42 print(/[\cſ]/.test("ſ"));
    44 print(/[\c#]/.test("\\"));
    45 print(/[\c#]/.test("c"));
    46 print(/[\c#]/.test("#"));
    48 // The characters that are supported by other engines are '0'-'9', '_':
    49 print(/[\c0]/.test("\x10"));
    50 print(/[\c1]/.test("\x11"));
    51 print(/[\c2]/.test("\x12"));
    52 print(/[\c3]/.test("\x13"));
    53 print(/[\c4]/.test("\x14"));
    54 print(/[\c5]/.test("\x15"));
    55 print(/[\c6]/.test("\x16"));
    56 print(/[\c7]/.test("\x17"));
    57 print(/[\c8]/.test("\x18"));
    58 print(/[\c9]/.test("\x19"));
    59 print(/[\c_]/.test("\x1F"));

mercurial