1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.testcase;
14
15 import com.eviware.soapui.config.TestStepConfig;
16 import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase;
17 import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStep;
18 import com.eviware.soapui.impl.wsdl.teststeps.registry.WsdlTestStepFactory;
19 import com.eviware.soapui.support.StringUtils;
20 import com.eviware.soapui.support.UISupport;
21 import com.eviware.soapui.support.action.support.AbstractSoapUIAction;
22
23 /***
24 * Adds a WsdlTestStep specified by the supplied WsdlTestStepFactory to a
25 * WsdlTestCase
26 *
27 * @author ole.matzura
28 */
29
30 public class AddWsdlTestStepAction extends AbstractSoapUIAction<WsdlTestCase>
31 {
32 public final static String SOAPUI_ACTION_ID = "AddWsdlTestStepAction";
33
34 public AddWsdlTestStepAction()
35 {
36 super( "Add Step", "Adds a TestStep to this TestCase" );
37 }
38
39 public void perform( WsdlTestCase testCase, Object param )
40 {
41 WsdlTestStepFactory factory = ( WsdlTestStepFactory )param;
42
43 String name = UISupport.prompt( "Specify name for new step", "Add Step", factory.getTestStepName() );
44
45 if( name == null )
46 return;
47 while( testCase.getTestStepByName( name.trim() ) != null )
48 {
49 name = UISupport.prompt( "Specify unique name of TestStep", "Rename TestStep", name );
50 if( StringUtils.isNullOrEmpty( name ) )
51 return;
52 }
53 TestStepConfig newTestStepConfig = factory.createNewTestStep( testCase, name );
54 if( newTestStepConfig != null )
55 {
56 WsdlTestStep testStep = testCase.addTestStep( newTestStepConfig );
57 UISupport.selectAndShow( testStep );
58 }
59 }
60 }