< prev index next >

test/java/lang/String/concat/StringConcatFactoryInvariants.java

Print this page

        

*** 64,74 **** private static final char TAG_ARG = '\u0001'; private static final char TAG_CONST = '\u0002'; public static void main(String[] args) throws Throwable { ! MethodHandles.Lookup lookup = MethodHandles.publicLookup(); String methodName = "foo"; MethodType mt = MethodType.methodType(String.class, String.class, int.class); String recipe = "" + TAG_ARG + TAG_ARG + TAG_CONST; String[] constants = new String[]{"bar"}; --- 64,74 ---- private static final char TAG_ARG = '\u0001'; private static final char TAG_CONST = '\u0002'; public static void main(String[] args) throws Throwable { ! MethodHandles.Lookup lookup = MethodHandles.lookup(); String methodName = "foo"; MethodType mt = MethodType.methodType(String.class, String.class, int.class); String recipe = "" + TAG_ARG + TAG_ARG + TAG_CONST; String[] constants = new String[]{"bar"};
*** 234,243 **** --- 234,251 ---- () -> StringConcatFactory.makeConcat(lookup, methodName, mtEmpty)); // Advanced factory: test empty arguments ok("Ok to pass empty arguments", () -> StringConcatFactory.makeConcatWithConstants(lookup, methodName, mtEmpty, recipeEmpty)); + + // Simple factory: public Lookup is rejected + fail("Passing public Lookup", + () -> StringConcatFactory.makeConcat(MethodHandles.publicLookup(), methodName, mtEmpty)); + + // Advanced factory: public Lookup is rejected + fail("Passing public Lookup", + () -> StringConcatFactory.makeConcatWithConstants(MethodHandles.publicLookup(), methodName, mtEmpty, recipeEmpty)); } public static void ok(String msg, Callable runnable) { try { runnable.call();
< prev index next >