892N/A * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. 892N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 892N/A * This code is free software; you can redistribute it and/or modify it 892N/A * under the terms of the GNU General Public License version 2 only, as 892N/A * published by the Free Software Foundation. 892N/A * This code is distributed in the hope that it will be useful, but WITHOUT 892N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 892N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 892N/A * version 2 for more details (a copy is included in the LICENSE file that 892N/A * accompanied this code). 892N/A * You should have received a copy of the GNU General Public License version 892N/A * 2 along with this work; if not, write to the Free Software Foundation, 892N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 892N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 892N/A * or visit www.oracle.com if you need additional information or have any 892N/A * @summary Fix Context issues 892N/A * @build JavacTestingAbstractProcessor T7021650 892N/A * Perform a compilation with custom factories registered in the context, 892N/A * and verify that corresponding objects are created in each round. 892N/A // Use a custom file manager which creates classloaders for annotation 892N/A // processors with a sensible delegation parent, so that all instances 892N/A // of test classes come from the same class loader. This is important 892N/A // because the test performs class checks on the instances of classes 892N/A // found in the context for each round or processing. 892N/A // Expect to create Demo for initial round, then MAX_ROUNDS in which 892N/A // GenX files are generated, then standard final round of processing. 892N/A // Expect to create MyAttr for same processing rounds as for Demo, 892N/A // plus additional context for final compilation. 892N/A * A custom class unknown to javac but nonetheless registered in the context. 892N/A * A custom version of a standard javac component. 892N/A // verify items in context as expected 892N/A // For a few rounds, generate new source files, so that we can check whether 892N/A // values in the context are correctly handled in subsequent processing rounds