[arquillian-issues] [JBoss JIRA] (ARQ-1038) Unwrap EJBException

Craig Ringer (JIRA) jira-events at lists.jboss.org
Mon Jul 23 04:39:07 EDT 2012


Craig Ringer created ARQ-1038:
---------------------------------

             Summary: Unwrap EJBException
                 Key: ARQ-1038
                 URL: https://issues.jboss.org/browse/ARQ-1038
             Project: Arquillian
          Issue Type: Feature Request
      Security Level: Public (Everyone can see)
          Components: Base Implementation
    Affects Versions: 1.0.1.Final
         Environment: n/a
            Reporter: Craig Ringer
            Priority: Minor


I'm often testing EJBs and am finding that the automatic wrapping of unchecked exceptions makes for rather verbose and noisy tests.

I'd like to write:

{code}
    @Test(expected=IllegalArgumentException.class)
    public void cannotGetNullId() {
    	someEJB.getById(null);
    }
{code}

but it will fail because IllegalArgumentException is an unchecked exception so it'll get wrapped in an EJBException. That's OK if I don't mind accepting *all* EJBExceptions, but I'd usually prefer to be more specific.

I frequently find myself writing verbose code to unwrap a thrown exception and test it manually:

{code}
    public void cannotGetNullId() {
    	try {
    		someEJB.getById(null);
    	} catch (EJBException ex) {
    		if (ex.getCause() instanceof IllegalArgumentException) {
    			return;
    		}
    		ex.printStackTrace();
    		Assert.fail("Unexpected exception: " +ex);
    	}
    	Assert.fail("Expected IllegalArgumentException");
    }
{code}

It'd be wonderful if Arquillian were able to provide EJBException unwrapping to make this testing process less ... icky.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the arquillian-issues mailing list