Clover icon

Coverage Report

  1. Project Clover database Wed Dec 3 2025 17:03:17 GMT
  2. Package jalview.ws.rest

File ShmmrRSBSService.java

 

Coverage histogram

../../../img/srcFileCovDistChart5.png
43% of files have more coverage

Code metrics

8
42
5
1
152
113
11
0.26
8.4
5
2.2

Classes

Class Line # Actions
ShmmrRSBSService 39 42 11
0.509090950.9%
 

Contributing tests

No tests hitting this source file were found.

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.ws.rest;
22   
23    import static org.testng.AssertJUnit.assertNotNull;
24    import static org.testng.AssertJUnit.assertTrue;
25   
26    import jalview.gui.AlignFrame;
27    import jalview.gui.JvOptionPane;
28    import jalview.ws.rest.clientdefs.ShmrRestClient;
29   
30    import java.util.Map;
31   
32    import org.testng.annotations.BeforeClass;
33    import org.testng.annotations.Test;
34   
35    /**
36    * @author jimp
37    *
38    */
 
39    public class ShmmrRSBSService
40    {
41   
 
42  1 toggle @BeforeClass(alwaysRun = true)
43    public void setUpJvOptionPane()
44    {
45  1 JvOptionPane.setInteractiveMode(false);
46  1 JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
47    }
48   
 
49  1 toggle @Test(groups = { "Functional" })
50    public void testShmmrService()
51    {
52   
53  1 assertTrue(
54    "Test Rsd Exchange using using default Shmmr service failed.",
55    testRsdExchange("Test using default Shmmr service",
56    ShmrRestClient.makeShmmrRestClient().service));
57    }
58   
 
59  1 toggle @Test(groups = { "Functional" })
60    public void testShmmrServiceDataprep() throws Exception
61    {
62  1 RestClient _rc = ShmrRestClient.makeShmmrRestClient();
63  1 assertNotNull(_rc);
64  1 AlignFrame alf = new jalview.io.FileLoader(false)
65    .LoadFileWaitTillLoaded("examples/testdata/smad.fa",
66    jalview.io.DataSourceType.FILE);
67  1 assertNotNull("Couldn't find test data.", alf);
68  1 alf.loadJalviewDataFile("examples/testdata/smad_groups.jva",
69    jalview.io.DataSourceType.FILE, null, null);
70  1 assertTrue(
71    "Couldn't load the test data's annotation file (should be 5 groups but found "
72    + alf.getViewport().getAlignment().getGroups().size()
73    + ").",
74    alf.getViewport().getAlignment().getGroups().size() == 5);
75   
76  1 RestClient rc = new RestClient(_rc.service, alf, true);
77   
78  1 assertNotNull("Couldn't creat RestClient job.", rc);
79  1 jalview.bin.Console.initLogger();
80  1 RestJob rjb = new RestJob(0, new RestJobThread(rc),
81    rc.av.getAlignment(), null);
82  1 rjb.setAlignmentForInputs(rc.service.getInputParams().values(),
83    rc.av.getAlignment());
84  1 for (Map.Entry<String, InputType> e : rc.service.getInputParams()
85    .entrySet())
86    {
87  2 System.out.println("For Input '" + e.getKey() + ":\n"
88    + e.getValue().formatForInput(rjb).getContentLength());
89    }
90    }
91   
 
92  0 toggle private static boolean testRsdExchange(String desc, String servicestring)
93    {
94  0 try
95    {
96  0 RestServiceDescription newService = new RestServiceDescription(
97    servicestring);
98  0 if (!newService.isValid())
99    {
100  0 throw new Error("Failed to create service from '" + servicestring
101    + "'.\n" + newService.getInvalidMessage());
102    }
103  0 return testRsdExchange(desc, newService);
104    } catch (Throwable x)
105    {
106  0 System.err.println(
107    "Failed for service (" + desc + "): " + servicestring);
108  0 x.printStackTrace();
109  0 return false;
110    }
111    }
112   
 
113  1 toggle private static boolean testRsdExchange(String desc,
114    RestServiceDescription service)
115    {
116  1 try
117    {
118  1 String fromservicetostring = service.toString();
119  1 RestServiceDescription newService = new RestServiceDescription(
120    fromservicetostring);
121  1 if (!newService.isValid())
122    {
123  0 throw new Error(
124    "Failed to create service from '" + fromservicetostring
125    + "'.\n" + newService.getInvalidMessage());
126    }
127   
128  1 if (!service.equals(newService))
129    {
130  0 System.err.println("Failed for service (" + desc + ").");
131  0 if (fromservicetostring.equals(newService.toString()))
132    {
133  0 System.err.println(
134    "Description strings are equivalent: fault during RestServiceDescription.equals()");
135  0 return false;
136    }
137  0 System.err.println("Original service and parsed service differ.");
138  0 System.err.println("Original: " + fromservicetostring);
139  0 System.err.println("Parsed : " + newService.toString());
140  0 return false;
141    }
142    } catch (Throwable x)
143    {
144  0 System.err.println(
145    "Failed for service (" + desc + "): " + service.toString());
146  0 x.printStackTrace();
147  0 return false;
148    }
149  1 return true;
150    }
151   
152    }