1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.teststeps.actions;
14
15 import java.awt.event.ActionEvent;
16
17 import javax.swing.AbstractAction;
18 import javax.swing.Action;
19 import javax.swing.JOptionPane;
20
21 import com.eviware.soapui.SoapUI;
22 import com.eviware.soapui.impl.wsdl.teststeps.WsdlAssertion;
23 import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestRequest;
24
25 /***
26 * Adds a WsdlAssertion to a WsdlTestRequest
27 *
28 * @author Ole.Matzura
29 */
30
31 public class AddAssertionAction extends AbstractAction
32 {
33 private final WsdlTestRequest request;
34
35 public AddAssertionAction( WsdlTestRequest wsdlTestRequest )
36 {
37 super( "Add Assertion" );
38 this.request = wsdlTestRequest;
39
40 putValue( Action.SHORT_DESCRIPTION, "Adds an assertion to this test request" );
41 putValue( Action.SMALL_ICON, SoapUI.createImageIcon( "/addAssertion.gif"));
42 }
43
44 public void actionPerformed(ActionEvent e)
45 {
46 String [] assertions = request.getAvailableAssertions();
47
48 if( assertions == null || assertions.length == 0 )
49 {
50 JOptionPane.showMessageDialog( SoapUI.getInstance().getFrame(),
51 "No assertions available for this request", "Error", JOptionPane.ERROR_MESSAGE );
52 return;
53 }
54
55 String selection = (String) JOptionPane.showInputDialog( SoapUI.getInstance().getFrame(),
56 "Select assertion to add", "Select Assertion", JOptionPane.QUESTION_MESSAGE, null, assertions, null );
57 if( selection == null ) return;
58
59 WsdlAssertion assertion = request.addAssertion( selection );
60 if( assertion == null )
61 {
62 JOptionPane.showMessageDialog( SoapUI.getInstance().getFrame(),
63 "Failed to add assertion", "Error", JOptionPane.ERROR_MESSAGE );
64 return;
65 }
66
67 if( assertion.isConfigurable() )
68 {
69 assertion.configure();
70 }
71 }
72 }