1 package jalview.ws.gui;
3 import static org.junit.Assert.assertTrue;
4 import jalview.gui.WsJobParameters;
5 import jalview.ws.jws2.JabaPreset;
6 import jalview.ws.jws2.Jws2Discoverer;
7 import jalview.ws.jws2.jabaws2.Jws2Instance;
9 import java.awt.BorderLayout;
10 import java.awt.event.WindowEvent;
11 import java.awt.event.WindowListener;
12 import java.util.ArrayList;
13 import java.util.Iterator;
14 import java.util.List;
15 import java.util.Vector;
17 import javax.swing.JFrame;
18 import javax.swing.JPanel;
20 import org.junit.Test;
22 import compbio.metadata.Option;
23 import compbio.metadata.Parameter;
24 import compbio.metadata.Preset;
25 import compbio.metadata.PresetManager;
27 public class Jws2ParamView
32 public static String[] serviceUrls = new String[]
33 { "http://localhost:8080/jabaws" };
36 * which services to test
38 public static List<String> serviceTests = new ArrayList<String>();
41 * which presets to test for services
43 public static List<String> presetTests = new ArrayList<String>();
46 serviceTests.add("AAConWS".toLowerCase());
50 public void testJws2Gui()
52 jalview.ws.jws2.Jws2Discoverer disc = jalview.ws.jws2.Jws2Discoverer
56 Vector<String> services = new Vector<String>();
57 for (String url : serviceUrls)
63 Jws2Discoverer.setServiceUrls(services);
70 System.err.println("Aborting. Problem discovering services. Tried "+svcurls);
74 assertTrue("Failed to discover any services at ",
75 disc.getServices().size() > 0);
76 Jws2Instance lastserv = null;
77 Iterator<String> presetEnum = presetTests.iterator();
78 for (Jws2Instance service : disc.getServices())
81 if (serviceTests.size() == 0
82 || serviceTests.contains(service.serviceType.toLowerCase()))
86 List<Preset> prl = null;
88 if (presetEnum.hasNext())
90 PresetManager prman = lastserv.getPresets();
93 pr = prman.getPresetByName(presetEnum.next());
96 // just grab the last preset.
97 prl = prman.getPresets();
103 PresetManager prman = lastserv.getPresets();
106 prl = prman.getPresets();
109 Iterator<Preset> en = (prl == null) ? null : prl.iterator();
110 while (en != null && en.hasNext())
121 System.out.println("Testing opts dupes for "
122 + lastserv.getUri() + " : "
123 + lastserv.getActionText() + ":" + pr.getName());
124 List<Option> rg = lastserv.getRunnerConfig().getOptions();
129 Option cpy = jalview.ws.jws2.ParameterUtils.copyOption(o);
130 } catch (Exception e)
132 System.err.println("Failed to copy " + o.getName());
136 System.err.println("Failed to copy " + o.getName());
142 System.out.println("Testing param dupes:");
143 List<Parameter> rg = lastserv.getRunnerConfig()
145 for (Parameter o : rg)
149 Parameter cpy = jalview.ws.jws2.ParameterUtils
151 } catch (Exception e)
153 System.err.println("Failed to copy " + o.getName());
157 System.err.println("Failed to copy " + o.getName());
163 System.out.println("Testing param write:");
164 List<String> writeparam = null, readparam = null;
167 writeparam = jalview.ws.jws2.ParameterUtils
169 pr.getArguments(lastserv.getRunnerConfig()),
171 System.out.println("Testing param read :");
172 List<Option> pset = jalview.ws.jws2.ParameterUtils
173 .processParameters(writeparam,
174 lastserv.getRunnerConfig(), " ");
175 readparam = jalview.ws.jws2.ParameterUtils
176 .writeParameterSet(pset, " ");
177 Iterator<String> o = pr.getOptions().iterator(), s = writeparam
178 .iterator(), t = readparam.iterator();
179 boolean failed = false;
180 while (s.hasNext() && t.hasNext())
182 String on = o.next(), sn = s.next(), st = t.next();
185 System.out.println("Original was " + on
186 + " Phase 1 wrote " + sn + "\tPhase 2 wrote "
193 System.out.println("Original parameters:\n"
195 System.out.println("Wrote parameters in first set:\n"
197 System.out.println("Wrote parameters in second set:\n"
201 } catch (Exception e)
206 WsJobParameters pgui = new WsJobParameters(lastserv,
207 new JabaPreset(lastserv, pr));
208 JFrame jf = new JFrame("Parameters for "
209 + lastserv.getActionText());
210 JPanel cont = new JPanel(new BorderLayout());
212 cont.setPreferredSize(pgui.getPreferredSize());
213 cont.add(pgui, BorderLayout.CENTER);
214 jf.setLayout(new BorderLayout());
215 jf.add(cont, BorderLayout.CENTER);
217 final Thread thr = Thread.currentThread();
218 jf.addWindowListener(new WindowListener()
221 public void windowActivated(WindowEvent e)
223 // TODO Auto-generated method stub
227 public void windowClosed(WindowEvent e)
231 public void windowClosing(WindowEvent e)
237 public void windowDeactivated(WindowEvent e)
239 // TODO Auto-generated method stub
243 public void windowDeiconified(WindowEvent e)
245 // TODO Auto-generated method stub
249 public void windowIconified(WindowEvent e)
251 // TODO Auto-generated method stub
255 public void windowOpened(WindowEvent e)
257 // TODO Auto-generated method stub
263 boolean inter = false;
269 } catch (Exception e)