diff --git a/test/jdk/java/lang/constant/ClassDescTest.java b/test/jdk/java/lang/constant/ClassDescTest.java index c297af1f294..7551edff11a 100644 --- a/test/jdk/java/lang/constant/ClassDescTest.java +++ b/test/jdk/java/lang/constant/ClassDescTest.java @@ -290,7 +290,8 @@ public class ClassDescTest extends SymbolicDescTest { String descWith255ArrayDims = "[".repeat(255); assertThrows(IllegalArgumentException.class, () -> ClassDesc.ofDescriptor(descWith255ArrayDims + "[Ljava/lang/String;"), "can't create an array type descriptor with more than 255 dimensions"); - assertThrows(IllegalArgumentException.class, () -> ClassDesc.ofDescriptor(descWith255ArrayDims + "Ljava/lang/String;"), + ClassDesc arrWith255Dims = ClassDesc.ofDescriptor(descWith255ArrayDims + "Ljava/lang/String;"); + assertThrows(IllegalArgumentException.class, () -> arrWith255Dims.arrayType(1), "can't create an array type descriptor with more than 255 dimensions"); } diff --git a/test/jdk/java/lang/constant/boottest/java.base/jdk/internal/constant/ConstantUtilsTest.java b/test/jdk/java/lang/constant/ConstantUtilsTest.java similarity index 87% rename from test/jdk/java/lang/constant/boottest/java.base/jdk/internal/constant/ConstantUtilsTest.java rename to test/jdk/java/lang/constant/ConstantUtilsTest.java index 7ed3ae5d927..c614132c7e5 100644 --- a/test/jdk/java/lang/constant/boottest/java.base/jdk/internal/constant/ConstantUtilsTest.java +++ b/test/jdk/java/lang/constant/ConstantUtilsTest.java @@ -21,17 +21,19 @@ * questions. */ -package jdk.internal.constant; - import java.lang.constant.*; import java.util.*; import static org.junit.jupiter.api.Assertions.*; + +import jdk.internal.constant.ConstantAccess; +import jdk.internal.constant.ConstantUtils; import org.junit.jupiter.api.Test; /* * @test * @bug 8303930 + * @build java.base/jdk.internal.constant.* * @compile ConstantUtilsTest.java * @modules java.base/jdk.internal.constant * @run junit ConstantUtilsTest @@ -43,7 +45,7 @@ public class ConstantUtilsTest { @Test public void testValidateMemberName() { assertThrows(NullPointerException.class, () -> ConstantUtils.validateMemberName(null, false)); - assertThrows(NullPointerException.class, () -> ConstantUtils.validateMemberName("", false)); + assertThrows(IllegalArgumentException.class, () -> ConstantUtils.validateMemberName("", false)); List badNames = List.of(".", ";", "[", "/", "<", ">"); for (String n : badNames) { @@ -53,7 +55,7 @@ public class ConstantUtilsTest { @Test public void testSkipOverFieldSignatureVoid() { - int ret = ConstantUtils.skipOverFieldSignature("(V)V", 1, 4); + int ret = ConstantAccess.skipOverFieldSignature("(V)V", 1, 4); assertEquals(0, ret, "Descriptor of (V)V starting at index 1, void disallowed"); } } diff --git a/test/jdk/java/lang/constant/boottest/TEST.properties b/test/jdk/java/lang/constant/boottest/TEST.properties deleted file mode 100644 index db8f3aca8bf..00000000000 --- a/test/jdk/java/lang/constant/boottest/TEST.properties +++ /dev/null @@ -1,3 +0,0 @@ -# This file identifies root(s) of the test-ng hierarchy. - -lib.dirs = /lib/testlibrary/bootlib diff --git a/test/jdk/java/lang/constant/java.base/jdk/internal/constant/ConstantAccess.java b/test/jdk/java/lang/constant/java.base/jdk/internal/constant/ConstantAccess.java new file mode 100644 index 00000000000..a6a671cf9ca --- /dev/null +++ b/test/jdk/java/lang/constant/java.base/jdk/internal/constant/ConstantAccess.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package jdk.internal.constant; + +// Exposes packaage-private methods for testing. +public final class ConstantAccess { + public static int skipOverFieldSignature(String descriptor, int start, int end) { + return ConstantUtils.skipOverFieldSignature(descriptor, start, end); + } +}