⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iactiontest.java

📁 是高效开发JAVA的XML工具
💻 JAVA
字号:
/*
* Created on 2008/04/24
*/
package com.change_vision.jude.api.test.model;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.change_vision.jude.api.inf.editor.TransactionManager;
import com.change_vision.jude.api.inf.exception.InvalidEditingException;
import com.change_vision.jude.api.inf.model.IActivity;
import com.change_vision.jude.api.inf.model.IActivityDiagram;
import com.change_vision.jude.api.inf.model.IActivityNode;
import com.change_vision.jude.api.inf.model.IDiagram;
import com.change_vision.jude.api.inf.model.IModel;
import com.change_vision.jude.api.inf.project.ProjectAccessor;
import com.change_vision.jude.api.inf.project.ProjectAccessorFactory;

/**
 * @author Harry
 */
public class IActionTest {

	protected static ProjectAccessor prjAccessor;
    protected static IModel project;

    @Before
	public void setup() {
		try {
            prjAccessor = ProjectAccessorFactory.getProjectAccessor();
            prjAccessor.open("testModel/judeAPITest/IActionTest.jude");
            project = prjAccessor.getProject();
        } catch (Throwable e) {
            e.printStackTrace();
        }
    }

    @After
	public void tearDown() {
		prjAccessor.close();
	}

    private IActivityDiagram getDiagram() {
        IDiagram[] dgms = project.getDiagrams();
        for (int i = 0; i < dgms.length; i++) {
            IDiagram diagram = dgms[i];
            if ("Activity Diagram0".equals(diagram.getName())) {
                return (IActivityDiagram)diagram;
            }
        }
        return null;
    }

    @Test
    public void testSetName() throws ClassNotFoundException,
    		InvalidEditingException {
    	IActivityDiagram dgm = getDiagram();
    	assertNotNull(dgm);
    	IActivity activity = dgm.getActivity();
    	assertNotNull(activity);
    	IActivityNode[] activityNodes = activity.getActivityNodes();
    	assertEquals(2, activityNodes.length);
    	assertEquals("Action0", activityNodes[0].getName());
    	assertEquals("CallBehaviorAction0", activityNodes[1].getName());
        try {
            TransactionManager.beginTransaction();
            activityNodes[0].setName("Action1");
            activityNodes[1].setName("CallBehaviorAction1");
            TransactionManager.endTransaction();
        	assertEquals("Action1", activityNodes[0].getName());
        	assertEquals("CallBehaviorAction1", activityNodes[1].getName());
        } catch (InvalidEditingException e) {
            TransactionManager.abortTransaction();
            e.printStackTrace();
            fail();
        }
    }

    @Test
    public void testSetActionMultiLineName1() throws ClassNotFoundException,
		InvalidEditingException {
		testSetActionMultiLineName("Acti\r\non1");
	}

    @Test
    public void testSetActionMultiLineName2() throws ClassNotFoundException,
    		InvalidEditingException {
		testSetActionMultiLineName("Acti\ron1");
    }

    @Test
    public void testSetActionMultiLineName3() throws ClassNotFoundException,
			InvalidEditingException {
		testSetActionMultiLineName("Acti\non1");
	}

    private void testSetActionMultiLineName(String newName) throws ClassNotFoundException,
			InvalidEditingException {
		IActivityDiagram dgm = getDiagram();
		assertNotNull(dgm);
		IActivity activity = dgm.getActivity();
		assertNotNull(activity);
		IActivityNode[] activityNodes = activity.getActivityNodes();
		assertEquals(2, activityNodes.length);
		assertEquals("Action0", activityNodes[0].getName());
		assertEquals("CallBehaviorAction0", activityNodes[1].getName());
		try {
		    TransactionManager.beginTransaction();
		    activityNodes[0].setName(newName);
		    TransactionManager.endTransaction();
		    assertEquals(newName, activityNodes[0].getName());
		} catch (InvalidEditingException e) {
			TransactionManager.abortTransaction();
			fail();
		}
    }

    @Test
    public void testSetCallBehaviorActionMultiLineName1() throws ClassNotFoundException,
			InvalidEditingException {
		testSetCallBehaviorActionMultiLineName("CallBehav\r\niorAction1");
	}

    @Test
	public void testSetCallBehaviorActionMultiLineName2() throws ClassNotFoundException,
			InvalidEditingException {
    	testSetCallBehaviorActionMultiLineName("CallBehav\riorAction1");
	}

    @Test
	public void testSetCallBehaviorActionMultiLineName3() throws ClassNotFoundException,
			InvalidEditingException {
    	testSetCallBehaviorActionMultiLineName("CallBehav\niorAction1");
	}


	private void testSetCallBehaviorActionMultiLineName(String newName) throws ClassNotFoundException,
			InvalidEditingException {
		IActivityDiagram dgm = getDiagram();
		assertNotNull(dgm);
		IActivity activity = dgm.getActivity();
		assertNotNull(activity);
		IActivityNode[] activityNodes = activity.getActivityNodes();
		assertEquals(2, activityNodes.length);
		assertEquals("Action0", activityNodes[0].getName());
		assertEquals("CallBehaviorAction0", activityNodes[1].getName());
		try {
		    TransactionManager.beginTransaction();
		    activityNodes[1].setName(newName);
		    TransactionManager.endTransaction();
		    assertEquals(newName, activityNodes[1].getName());
		} catch (InvalidEditingException e) {
			TransactionManager.abortTransaction();
			fail();
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -