testpetstoreejb2.java

来自「软件测试经典书籍<<Junit in action>>里」· Java 代码 · 共 56 行

JAVA
56
字号
package junitbook.ejb.service3;

import java.util.Date;

import javax.ejb.EJBException;
import javax.jms.JMSException;

import junit.framework.Test;
import junitbook.ejb.CommonPetstoreTestCase;
import junitbook.ejb.service.PetstoreEJB;

public class TestPetstoreEJB2 extends CommonPetstoreTestCase
{       
    private PetstoreEJB petstore;

    public static Test suite()
    {
        return suite(TestPetstoreEJB2.class);
    } 

    protected void setUp() throws Exception
    {
        super.setUp();
        
        petstore = new PetstoreEJB() {};
    }

    public void testCreateOrderOk() throws Exception
    {
        mockQueueConnectionFactory.expectAndReturn(
            "createQueueConnection", queueConnection);

        int orderId = petstore.createOrder(new Date(), "item1");
        
        assertEquals(1234, orderId);
    }

    public void testCreateThrowsOrderException() throws Exception
    {
        mockQueueConnectionFactory.expectAndThrow(
            "createQueueConnection", new JMSException("error"));

        try
        {
            petstore.createOrder(new Date(), "item1");
            fail("Should have thrown an EJBException");
        }
        catch (EJBException expected)
        {
            assertEquals("error", 
                expected.getCausedByException().getMessage());
        }
    }

}

⌨️ 快捷键说明

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