1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.actions.testsuite;
14
15 import java.awt.event.ActionEvent;
16
17 import javax.swing.AbstractAction;
18 import javax.swing.Action;
19
20 import com.eviware.soapui.SoapUI;
21 import com.eviware.soapui.impl.wsdl.WsdlProject;
22 import com.eviware.soapui.impl.wsdl.WsdlTestSuite;
23 import com.eviware.soapui.support.UISupport;
24
25 /***
26 * Removes a WsdlTestSuite from its WsdlProject
27 *
28 * @author Ole.Matzura
29 */
30
31 public class RemoveTestSuiteAction extends AbstractAction
32 {
33 private final WsdlTestSuite testSuite;
34
35 public RemoveTestSuiteAction( WsdlTestSuite testSuite )
36 {
37 super( "Remove" );
38 this.testSuite = testSuite;
39 putValue( Action.SHORT_DESCRIPTION, "Removes this TestSuite from the project" );
40 putValue( Action.ACCELERATOR_KEY, UISupport.getKeyStroke( "DELETE" ));
41 }
42
43 public void actionPerformed(ActionEvent e)
44 {
45 for( int c = 0; c < testSuite.getTestCaseCount(); c++ )
46 {
47 if( SoapUI.getTestMonitor().hasRunningTest( testSuite.getTestCaseAt( c )))
48 {
49 UISupport.showErrorMessage( "Cannot remove testSuite due to running tests" );
50 return;
51 }
52 }
53
54 if( UISupport.confirm( "Remove TestSuite [" + testSuite.getName() + "] from project", "Remove TestSuite" ))
55 {
56 ((WsdlProject)testSuite.getProject()).removeTestSuite( testSuite );
57 }
58 }
59 }