Package org.codehaus.xharness.tasks

Source Code of org.codehaus.xharness.tasks.ServiceVerifyTaskTest

package org.codehaus.xharness.tasks;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.Task;
import org.easymock.MockControl;
import org.easymock.classextension.MockClassControl;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

public class ServiceVerifyTaskTest extends TestCase {
    public ServiceVerifyTaskTest(String name) {
        super(name);
    }

    public static void main(String[] args) throws Exception {
        if (System.getProperty("gui") != null) {
            String[] newArgs = new String[args.length + 2];
            System.arraycopy(args, 0, newArgs, 0, args.length);
            newArgs[args.length] = ServiceVerifyTaskTest.class.getName();
            newArgs[args.length + 1] = "-noloading";
            junit.swingui.TestRunner.main(newArgs);
        } else {
            String[] newArgs = new String[args.length + 1];
            System.arraycopy(args, 0, newArgs, 0, args.length);
            newArgs[args.length] = ServiceVerifyTaskTest.class.getName();
            junit.textui.TestRunner.main(newArgs);
        }
    }

    public static Test suite() {
        return new TestSuite(ServiceVerifyTaskTest.class);
    }
   
    public void testExecute() throws Exception {
        MockControl prjCtrl = MockClassControl.createNiceControl(Project.class);
        Project project = (Project)prjCtrl.getMock();

        MockControl taskCtrl = MockClassControl.createControl(Task.class);
        Task mockTask = (Task)taskCtrl.getMock();
        mockTask.getProject();
        taskCtrl.setReturnValue(project, 2);
        mockTask.maybeConfigure();
        mockTask.execute();
       
        ServiceVerifyTask verify = new ServiceVerifyTask();
        verify.setProject(project);
        verify.addTask(mockTask);
       
        prjCtrl.replay();
        taskCtrl.replay();
        verify.execute();
        prjCtrl.verify();
        taskCtrl.verify();
    }
   
    public void testExecuteDummy() throws Exception {
        MockControl prjCtrl = MockClassControl.createNiceControl(Project.class);
        Project project = (Project)prjCtrl.getMock();

        MockControl taskCtrl = MockClassControl.createControl(Task.class);
        Task mockTask = (Task)taskCtrl.getMock();
       
        ServiceVerifyTask verify = new ServiceVerifyTask();
        verify.setProject(project);
        verify.addTask(mockTask);
        verify.setTaskName(ServiceVerifyTask.DUMMY);
       
        prjCtrl.replay();
        taskCtrl.replay();
        verify.execute();
        prjCtrl.verify();
        taskCtrl.verify();
    }
   
    public void testExecuteException() throws Exception {
        MockControl prjCtrl = MockClassControl.createNiceControl(Project.class);
        Project project = (Project)prjCtrl.getMock();

        MockControl taskCtrl = MockClassControl.createControl(Task.class);
        Task mockTask = (Task)taskCtrl.getMock();
       
        ServiceVerifyTask verify = new ServiceVerifyTask();
        verify.setProject(project);
        verify.addTask(mockTask);
        verify.setException(new BuildException("foo"));
       
        prjCtrl.replay();
        taskCtrl.replay();
        try {
            verify.execute();
            fail("Expected BuildException");
        } catch (BuildException be) {
            assertEquals("Wrong message", "foo", be.getMessage());
        }
        prjCtrl.verify();
        taskCtrl.verify();
    }
}
TOP

Related Classes of org.codehaus.xharness.tasks.ServiceVerifyTaskTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.