--- old/test/java/lang/String/concat/StringConcatFactoryInvariants.java 2016-02-10 15:48:29.141411466 +0300 +++ new/test/java/lang/String/concat/StringConcatFactoryInvariants.java 2016-02-10 15:48:28.973411471 +0300 @@ -66,7 +66,7 @@ private static final char TAG_CONST = '\u0002'; public static void main(String[] args) throws Throwable { - MethodHandles.Lookup lookup = MethodHandles.publicLookup(); + 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; @@ -236,6 +236,14 @@ // 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) {