Tests for AACon loader
[jabaws.git] / testsrc / compbio / ws / client / TestWSClient.java
1 package compbio.ws.client;\r
2 \r
3 import static org.testng.Assert.assertNotNull;\r
4 import static org.testng.Assert.fail;\r
5 \r
6 import java.io.File;\r
7 import java.io.FileInputStream;\r
8 import java.io.FileNotFoundException;\r
9 import java.io.IOException;\r
10 import java.net.URL;\r
11 import java.util.List;\r
12 \r
13 import javax.xml.namespace.QName;\r
14 import javax.xml.ws.Service;\r
15 \r
16 import org.testng.annotations.Test;\r
17 \r
18 import compbio.data.msa.MsaWS;\r
19 import compbio.data.sequence.Alignment;\r
20 import compbio.data.sequence.FastaSequence;\r
21 import compbio.data.sequence.SequenceUtil;\r
22 import compbio.metadata.JobSubmissionException;\r
23 import compbio.metadata.LimitExceededException;\r
24 import compbio.metadata.ResultNotAvailableException;\r
25 import compbio.metadata.UnsupportedRuntimeException;\r
26 import compbio.util.SysPrefs;\r
27 import compbio.ws.server.ClustalWS;\r
28 \r
29 public class TestWSClient {\r
30 \r
31         @Test\r
32         public void test() throws FileNotFoundException, IOException {\r
33 \r
34                 URL url = new URL("http://localhost:8080/jaba/ClustalWS?wsdl");\r
35                 String namespace = "http://msa.data.compbio/01/01/2010/";\r
36                 QName qname = new QName(namespace, "ClustalWS");\r
37                 Service serv = Service.create(url, qname);\r
38                 /*\r
39                  * MsaWS msaws = serv.getPort(new QName(\r
40                  * "http://msa.data.compbio/01/01/2010/", "ClustalWSPort"),\r
41                  * MsaWS.class);\r
42                  */\r
43                 // Annotation<AACon> msaws = serv.getPort(new QName(namespace,\r
44                 // "ClustalWSPort"), Annotation.class);\r
45 \r
46                 MsaWS<ClustalWS> msaws = serv.getPort(new QName(namespace,\r
47                                 "ClustalWSPort"), MsaWS.class);\r
48 \r
49                 // List<FastaSequence> fsl = SequenceUtil.readFasta(new FileInputStream(\r
50                 // AAConTester.test_alignment_input));\r
51 \r
52                 String CURRENT_DIRECTORY = SysPrefs.getCurrentDirectory()\r
53                                 + File.separator;\r
54 \r
55                 List<FastaSequence> fsl = SequenceUtil.readFasta(new FileInputStream(\r
56                                 CURRENT_DIRECTORY + "testsrc" + File.separator + "testdata"\r
57                                                 + File.separator + "testlimit.in"));\r
58 \r
59                 try {\r
60                         String jobId = msaws.align(fsl);\r
61                         Alignment result = msaws.getResult(jobId);\r
62                         assertNotNull(result);\r
63                         System.out.println(result);\r
64                 } catch (UnsupportedRuntimeException e) {\r
65                         e.printStackTrace();\r
66                         fail(e.getMessage());\r
67                 } catch (LimitExceededException e) {\r
68                         e.printStackTrace();\r
69                         fail(e.getMessage());\r
70                 } catch (JobSubmissionException e) {\r
71                         e.printStackTrace();\r
72                         fail(e.getMessage());\r
73                 } catch (ResultNotAvailableException e) {\r
74                         e.printStackTrace();\r
75                         fail(e.getMessage());\r
76                 }\r
77                 System.out.println("Pres: " + msaws.getPresets());\r
78         }\r
79 }\r