1 package com.eviware.soapui.impl.wsdl.teststeps.assertions.jdbc; 2 3 import com.eviware.soapui.config.TestAssertionConfig; 4 import com.eviware.soapui.impl.wsdl.WsdlRequest; 5 import com.eviware.soapui.impl.wsdl.panels.teststeps.JdbcSubmit; 6 import com.eviware.soapui.impl.wsdl.teststeps.JdbcRequestTestStep; 7 import com.eviware.soapui.impl.wsdl.teststeps.WsdlMessageAssertion; 8 import com.eviware.soapui.impl.wsdl.teststeps.assertions.AbstractTestAssertionFactory; 9 import com.eviware.soapui.model.iface.MessageExchange; 10 import com.eviware.soapui.model.iface.SubmitContext; 11 import com.eviware.soapui.model.testsuite.Assertable; 12 import com.eviware.soapui.model.testsuite.AssertionError; 13 import com.eviware.soapui.model.testsuite.AssertionException; 14 import com.eviware.soapui.model.testsuite.RequestAssertion; 15 import com.eviware.soapui.model.testsuite.ResponseAssertion; 16 17 public class JdbcStatusAssertion extends WsdlMessageAssertion implements ResponseAssertion, RequestAssertion 18 { 19 public static final String ID = "JDBC Status"; 20 public static final String LABEL = "JDBC Status"; 21 22 public JdbcStatusAssertion( TestAssertionConfig assertionConfig, Assertable assertable ) 23 { 24 super( assertionConfig, assertable, false, false, false, true ); 25 } 26 27 @Override 28 protected String internalAssertResponse( MessageExchange messageExchange, SubmitContext context ) 29 throws AssertionException 30 { 31 32 Exception exception = ( Exception )context.getProperty( JdbcSubmit.JDBC_ERROR ); 33 if( exception != null ) 34 { 35 throw new AssertionException( new AssertionError( exception.getMessage() ) ); 36 } 37 38 return "JDBC Status OK"; 39 } 40 41 @Override 42 protected String internalAssertRequest( MessageExchange messageExchange, SubmitContext context ) 43 throws AssertionException 44 { 45 return "JDBC Status OK"; 46 } 47 48 public static class Factory extends AbstractTestAssertionFactory 49 { 50 public Factory() 51 { 52 super( JdbcStatusAssertion.ID, JdbcStatusAssertion.LABEL, JdbcStatusAssertion.class, WsdlRequest.class ); 53 } 54 55 @Override 56 public boolean canAssert( Assertable assertable ) 57 { 58 return assertable instanceof JdbcRequestTestStep; 59 } 60 } 61 }