blob: 540afbbe59bf2fdffbcdd2cc7b88a3553eb9a40d [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2009, 2015 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.core.tests.resources.regression;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.eclipse.core.filesystem.IFileStore;
import org.eclipse.core.resources.*;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.tests.resources.ResourceTest;
public class Bug_264182 extends ResourceTest {
IProject project;
IFile dotProject;
/**
* Constructor for Bug_264182.
*/
public Bug_264182() {
super();
}
@Override
protected void setUp() throws Exception {
super.setUp();
// create a project
project = getWorkspace().getRoot().getProject(getUniqueString());
try {
project.create(new NullProgressMonitor());
project.open(new NullProgressMonitor());
} catch (CoreException e) {
fail("Project creation failed", e);
}
// set the description read-only
dotProject = project.getFile(IProjectDescription.DESCRIPTION_FILE_NAME);
setReadOnly(dotProject, true);
}
@Override
protected void tearDown() throws Exception {
// make the description writable
setReadOnly(dotProject, false);
super.tearDown();
}
/**
* Constructor for Bug_264182.
* @param name
*/
public Bug_264182(String name) {
super(name);
}
public static Test suite() {
return new TestSuite(Bug_264182.class);
}
public void testBug() {
// create a linked resource
final IFile file = project.getFile(getUniqueString());
IFileStore tempFileStore = getTempStore();
createFileInFileSystem(tempFileStore);
try {
file.createLink(tempFileStore.toURI(), IResource.NONE, new NullProgressMonitor());
fail("1.0");
} catch (CoreException e) {
// should fail updating the description
}
// the file should not exist in the workspace
assertDoesNotExistInWorkspace(file);
}
}