/******************************************************************************* * Copyright (c) 2010 Martin Schnabel <mb0@mb0.org>. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html ******************************************************************************/ package org.axdt.core.model; import java.util.List; import junit.framework.TestCase; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IWorkspaceRoot; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import com.google.common.collect.Lists; /** * <!-- begin-user-doc --> * A test case for the model object '<em><b>Axdt Element</b></em>'. * <!-- end-user-doc --> * <p> * The following operations are tested: * <ul> * <li>{@link org.axdt.core.model.AxdtElement#getPath() <em>Get Path</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#getResource() <em>Get Resource</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#getName() <em>Get Name</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#isHandle() <em>Is Handle</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#getHandle() <em>Get Handle</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#isConnected() <em>Is Connected</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#connect() <em>Connect</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#disconnect() <em>Disconnect</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#exists() <em>Exists</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#getParent() <em>Get Parent</em>}</li> * <li>{@link org.axdt.core.model.AxdtElement#isReadOnly() <em>Is Read Only</em>}</li> * </ul> * </p> * @generated */ public abstract class AxdtElementTest extends TestCase { protected IProject getIProject(String name) { IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); return root.getProject(name); } protected void createIProject(IProject project) { try { project.create(null); toDelete.add(project); project.open(null); } catch (CoreException e) { e.printStackTrace(); } } /** * The fixture for this Axdt Element test case. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected AxdtElement fixture = null; protected final List<IResource> toDelete = Lists.newArrayList(); protected void cleanUpResources() { for (IResource res:toDelete) { try { res.delete(true, null); } catch (Exception e) { e.printStackTrace(); } } } /** * Constructs a new Axdt Element test case with the given name. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public AxdtElementTest(String name) { super(name); } /** * Sets the fixture for this Axdt Element test case. * <!-- begin-user-doc --> * <!-- end-user-doc --> */ protected void setFixture(AxdtElement fixture) { this.fixture = fixture; if (fixture == null) cleanUpResources(); } /** * Returns the fixture for this Axdt Element test case. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected AxdtElement getFixture() { return fixture; } protected abstract IResource setDefaultResource(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#getPath() <em>Get Path</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#getPath() */ public void testGetPath() { assertNull(getFixture().getPath()); IResource resource = setDefaultResource(); assertSame(resource.getFullPath(), getFixture().getPath()); } /** * Tests the '{@link org.axdt.core.model.AxdtElement#isHandle() <em>Is Handle</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#isHandle() */ public void testIsHandle() { // override in axdt handle and model assertFalse(getFixture().isHandle()); } /** * Tests the '{@link org.axdt.core.model.AxdtElement#getHandle() <em>Get Handle</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#getHandle() */ public abstract void testGetHandle(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#isConnected() <em>Is Connected</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#isConnected() */ public void testIsConnected() { // by default no element is connected except the model assertFalse(getFixture().isConnected()); } /** * Tests the '{@link org.axdt.core.model.AxdtElement#connect() <em>Connect</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#connect() */ public abstract void testConnect(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#disconnect() <em>Disconnect</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#disconnect() */ public abstract void testDisconnect(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#exists() <em>Exists</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#exists() */ public abstract void testExists(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#getParent() <em>Get Parent</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#getParent() */ public abstract void testGetParent(); /** * Tests the '{@link org.axdt.core.model.AxdtElement#isReadOnly() <em>Is Read Only</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#isReadOnly() * @generated */ public void testIsReadOnly() { // TODO: implement this operation test method // Ensure that you remove @generated or mark it @generated NOT fail(); } /** * Tests the '{@link org.axdt.core.model.AxdtElement#getResource() <em>Get Resource</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#getResource() */ public void testGetResource() { assertNull(getFixture().getResource()); IResource resource = setDefaultResource(); assertSame(resource, getFixture().getResource()); } /** * Tests the '{@link org.axdt.core.model.AxdtElement#getName() <em>Get Name</em>}' operation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.axdt.core.model.AxdtElement#getName() */ public void testGetName() { assertNull(getFixture().getName()); IResource resource = setDefaultResource(); assertSame(resource.getName(), getFixture().getName()); } } //AxdtElementTest