/* Copyright (c) 2011 Peter Troshin\r
+ * Copyright (c) 2013 Alexander Sherstnev\r
* \r
- * JAva Bioinformatics Analysis Web Services (JABAWS) @version: 2.0 \r
+ * JAva Bioinformatics Analysis Web Services (JABAWS) @version: 2.0\r
* \r
* This library is free software; you can redistribute it and/or modify it under the terms of the\r
* Apache License version 2 as published by the Apache Software Foundation\r
* \r
* @author pvtroshin\r
* \r
- * @version 1.0 February 2010\r
+ * @version 1.5 February 2013\r
*/\r
public class WSTester {\r
\r
/**\r
- * Sequences to be used as input for all WS\r
+ * Test sequences to be used as input for WS\r
*/\r
- public static final String fastaInput2records = ">Foo\n"\r
- + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV"\r
- + "\n>Bar\n"\r
- + "ASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAHQLLPEEPYITAQLLNAVA\n";\r
- public static final String fastaInput1record = ">Foo\n"\r
- + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV"\r
- + "\n";\r
-\r
- public static final String fastaAlignment = ">Foo\n"\r
- + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV--------\n"\r
- + ">Bar\n"\r
- + "ASDAAPEH------------PGIALWLHALE-DAGQAEAAA---AYTRAHQLLPEEPYITAQLLNAVA\n"\r
- + "";\r
-\r
- static final List<FastaSequence> seqs = loadSeqs(2);\r
+ public static final String fastaInput2records = \r
+ ">Foo\nMTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV\n"\r
+ + ">Bar\nASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAHQLLPEEPYITAQLLNAVA\n";\r
+ public static final String fastaInput1record = \r
+ ">Foo\nMTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV\n";\r
+ public static final String fastaAlignment = \r
+ ">Foo\nMTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV--------\n"\r
+ + ">Bar\nASDAAPEH------------PGIALWLHALE-DAGQAEAAA---AYTRAHQLLPEEPYITAQLLNAVA\n";\r
\r
+ /**\r
+ * Status strings\r
+ */\r
private static final String FAILED = "FAILED";\r
private static final String OK = "OK";\r
-\r
private static final String UNSUPPORTED = "UNSUPPORTED";\r
\r
/**\r
writer.print("Aligning with preset '" + preset.getName() + "'... ");\r
Alignment al = null;\r
try {\r
- String taskId = msaws.presetAlign(seqs, preset);\r
+ String taskId = msaws.presetAlign(loadSeqs(2), preset);\r
al = msaws.getResult(taskId);\r
if (al != null) {\r
writer.println(OK);\r
return succeed;\r
}\r
\r
- private <T> boolean testMsaWS(MsaWS<T> msaws) throws Exception {\r
+ private <T> boolean testMsaWS(MsaWS<T> msaws, Services service) throws Exception {\r
assert msaws != null;\r
\r
- boolean succeed = testDefaultAlignment(msaws);\r
+ boolean succeed = testDefaultAlignment(msaws, service);\r
// If exception above is thrown than the tests below is not run\r
\r
PresetManager<T> pmanager = msaws.getPresets();\r
}\r
\r
if (wservice instanceof MsaWS) {\r
- return testMsaWS((MsaWS<T>) wservice);\r
+ return testMsaWS((MsaWS<T>) wservice, service);\r
} else if (wservice instanceof SequenceAnnotation) {\r
return testSequenceAnnotationWS(\r
(SequenceAnnotation<T>) wservice, service);\r
if (service == Services.AAConWS) {\r
input = loadAlignment();\r
}\r
- if (service == Services.JpredWS) {\r
- input = loadSeqs(1);\r
- }\r
boolean success = testDefaultAnalyse(input, wservice, null, null);\r
\r
PresetManager<T> presetman = wservice.getPresets();\r
* @param msaws\r
* @throws UnsupportedRuntimeException\r
*/\r
- private <T> boolean testDefaultAlignment(MsaWS<T> msaws) throws Exception {\r
+ private <T> boolean testDefaultAlignment(MsaWS<T> msaws, Services service) throws Exception {\r
writer.print("Testing alignment with default parameters:");\r
Alignment al = null;\r
boolean succeed = false;\r
+ String taskId;\r
\r
- String taskId = msaws.align(seqs);\r
+ if (service == Services.JpredWS) {\r
+ taskId = msaws.align(loadSeqs(1));\r
+ } else {\r
+ taskId = msaws.align(loadSeqs(2));\r
+ }\r
writer.print("\nQuerying job status...");\r
JobStatus status = msaws.getJobStatus(taskId);\r
while (status != JobStatus.FINISHED) {\r