public ClasspathModifierQueries.IOutputFolderQuery getOutputFolderQuery(IPath path) throws JavaModelException {
public ClasspathModifierQueries.OutputFolderQuery getOutputFolderQuery(IPath path) throws JavaModelException {
    public void testEditOutputFolderWithNullReturn() throws JavaModelException, CoreException, InvocationTargetException, InterruptedException {      // here we have to set the future output folder to /WorkspaceProject/bin2 because      // createOutputFolder() adds a new source folder to the project and removes the project as root      // therefore the default output for the project changes to .../bin and editing changes it again to      // .../bin2.      final CPListElementAttribute attribute= createOutputFolder(fProject.getOutputLocation().append("bin2"));      IPackageFragmentRoot root= fProject.findPackageFragmentRoot(fProject.getPath().append(fNormalFolder));            assertTrue(root.getRawClasspathEntry().getOutputLocation() != null);            ClasspathModifierQueries.IOutputLocationQuery query= new ClasspathModifierQueries.IOutputLocationQuery() {                    public boolean doQuery(CPListElement element) {              return true;          }          public IPath getOutputLocation() {              return null;          }          public ClasspathModifierQueries.IOutputFolderQuery getOutputFolderQuery(IPath path) throws JavaModelException {              return getOutputFolderQueryInternal(defaultOutputFolder);          }            };      CPListElementAttribute newAttribute= (CPListElementAttribute)executeOperation(IClasspathInformationProvider.EDIT_OUTPUT, attribute, null, query, null, null);            assertTrue(root.getRawClasspathEntry().getOutputLocation() == null);      assertTrue(newAttribute.getValue() == null);            validateClasspath();    }