/*****************************************************************************
 * Copyright (c) 2011-2012 CEA LIST.
 *
 * 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
 *
 * Contributors:
 *		
 *		CEA LIST - Initial API and implementation
 *
 *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.tests.dnd.custom;

import org.eclipse.papyrus.sysml.diagram.blockdefinition.tests.AbstractTest;
import org.junit.Ignore;
import org.junit.Test;

/**
 * JUnit tests for element drop test (via palette tools) in an Actor "properties" compartment.
 */
public class TestNodeDropOnActorPropertyCompartment extends AbstractTest {

	@Ignore("Actor should not have properties compartment.")
	@Test
	public void warning() {
	};

}
