+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b2)
+ * Copyright (C) 2015 The Jalview Authors
+ *
+ * This file is part of Jalview.
+ *
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
package jalview.ws.jabaws;
-import static org.junit.Assert.*;
+import static org.testng.AssertJUnit.assertEquals;
import java.util.ArrayList;
import java.util.List;
-import java.util.function.Consumer;
-import jalview.ws.jws2.jabaws2.Jws2Instance;
-import jalview.ws.jws2.jabaws2.Jws2InstanceFactory;
+import org.testng.Assert;
+import org.testng.annotations.Test;
-import org.junit.Test;
-
-import compbio.data.msa.Category;
-import compbio.data.msa.JABAService;
import compbio.data.msa.MsaWS;
import compbio.data.msa.RegistryWS;
import compbio.data.sequence.FastaSequence;
import compbio.ws.client.Jws2Client;
import compbio.ws.client.Services;
-public class MinJabawsClientTests {
+public class MinJabawsClientTests
+{
- @SuppressWarnings("rawtypes")
- @Test
- public void msaTest() throws Exception {
- String url;
- RegistryWS registry = Jws2Client
- .connectToRegistry(url = "http://www.compbio.dundee.ac.uk/jabaws");
- if (registry != null) {
+ /**
+ * simple test for the benefit of JAL-1338
+ *
+ * @throws Exception
+ */
+ @SuppressWarnings("rawtypes")
+ @Test(groups = { "Network" })
+ public void msaTest() throws Exception
+ {
+ String url;
+ RegistryWS registry = Jws2Client
+ .connectToRegistry(url = "http://www.compbio.dundee.ac.uk/jabaws");
+ if (registry != null)
+ {
- MsaWS msaservice = null;
- for (Services service : registry.getSupportedServices()) {
- if (service.equals(Services.ClustalOWS)) {
- msaservice = (MsaWS) Jws2Client.connect(url, service);
- if (msaservice != null) {
- break;
- }
- }
- }
- if (msaservice == null) {
- fail("couldn't find a clustalO service on the public registry");
- }
- FastaSequence fsq = new FastaSequence("seqA",
- "SESESESESESESESSESESSESESESESESESESESESEEEEEESSESESESESSSSESESESESESESE");
- List<FastaSequence> iseqs = new ArrayList<FastaSequence>();
- for (int i = 0; i < 9; i++) {
- iseqs.add(new FastaSequence(fsq.getId() + i, fsq.getSequence()
- + fsq.getSequence().substring(i + 3, i + 3 + i)));
- }
+ MsaWS msaservice = null;
+ for (Services service : registry.getSupportedServices())
+ {
+ if (service.equals(Services.ClustalOWS))
+ {
+ msaservice = (MsaWS) Jws2Client.connect(url, service);
+ if (msaservice != null)
+ {
+ break;
+ }
+ }
+ }
+ if (msaservice == null)
+ {
+ Assert.fail("couldn't find a clustalO service on the public registry");
+ }
+ FastaSequence fsq = new FastaSequence("seqA",
+ "SESESESESESESESSESESSESESESESESESESESESEEEEEESSESESESESSSSESESESESESESE");
+ List<FastaSequence> iseqs = new ArrayList<FastaSequence>();
+ for (int i = 0; i < 9; i++)
+ {
+ iseqs.add(new FastaSequence(fsq.getId() + i, fsq.getSequence()
+ + fsq.getSequence().substring(i + 3, i + 3 + i)));
+ }
- String jobid = msaservice.align(iseqs);
- if (jobid != null) {
- JobStatus js = null;
- do {
- try {
- Thread.sleep(500);
- } catch (InterruptedException q) {
- }
- ;
- js = msaservice.getJobStatus(jobid);
- } while (!js.equals(JobStatus.FAILED)
- && !js.equals(JobStatus.CANCELLED)
- && !js.equals(JobStatus.FINISHED));
- assertEquals("Trial alignment failed. State was " + js.name(),
- js, JobStatus.FINISHED);
- assertEquals(
- "Mismatch in number of input and result sequences - assume alignment service wasn't interacted with correctly",
- msaservice.getResult(jobid).getSequences().size(),
- iseqs.size());
- msaservice.getResult(jobid).getSequences()
- .forEach(new Consumer<FastaSequence>() {
- @Override
- public void accept(FastaSequence t) {
- System.out.println(">"+t.getId());
- System.out.println(t.getFormattedFasta());
- }
- });
- }
+ String jobid = msaservice.align(iseqs);
+ if (jobid != null)
+ {
+ JobStatus js = null;
+ do
+ {
+ try
+ {
+ Thread.sleep(500);
+ } catch (InterruptedException q)
+ {
+ }
+ ;
+ js = msaservice.getJobStatus(jobid);
+ } while (!js.equals(JobStatus.FAILED)
+ && !js.equals(JobStatus.CANCELLED)
+ && !js.equals(JobStatus.FINISHED));
+ assertEquals("Trial alignment failed. State was " + js.name(), js,
+ JobStatus.FINISHED);
+ assertEquals(
+ "Mismatch in number of input and result sequences - assume alignment service wasn't interacted with correctly",
+ msaservice.getResult(jobid).getSequences().size(),
+ iseqs.size());
+ for (FastaSequence t : msaservice.getResult(jobid).getSequences())
+ {
+ System.out.println(">" + t.getId());
+ System.out.println(t.getFormattedFasta());
+ }
+ // .forEach(new Consumer<FastaSequence>() {
+ // @Override
+ // public void accept(FastaSequence t) {
+ // System.out.println(">"+t.getId());
+ // System.out.println(t.getFormattedFasta());
+ // }
+ // });
+ }
- }
- }
+ }
+ }
}