Class |
Line # |
Actions |
|||
---|---|---|---|---|---|
RestClientTest | 33 | 15 | 3 |
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.assertEquals; | |
24 | ||
25 | import jalview.bin.Cache; | |
26 | import jalview.gui.JvOptionPane; | |
27 | ||
28 | import java.util.Vector; | |
29 | ||
30 | import org.testng.annotations.BeforeClass; | |
31 | import org.testng.annotations.Test; | |
32 | ||
33 | public class RestClientTest | |
34 | { | |
35 | ||
36 | 1 | @BeforeClass(alwaysRun = true) |
37 | public void setUpJvOptionPane() | |
38 | { | |
39 | 1 | JvOptionPane.setInteractiveMode(false); |
40 | 1 | JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); |
41 | } | |
42 | ||
43 | /** | |
44 | * Refactored 'as is' from main method | |
45 | */ | |
46 | 1 | @Test(groups = { "Functional" }) |
47 | public void testGetRestClient() | |
48 | { | |
49 | /* | |
50 | * Load test properties file (readonly) so as not to overwrite the real one | |
51 | */ | |
52 | 1 | Cache.loadProperties("test/jalview/io/testProps.jvprops"); |
53 | ||
54 | 1 | RestClient[] clients = RestClient.getRestClients(); |
55 | 1 | System.out.println("Got " + clients.length + " clients."); |
56 | 1 | int i = 0; |
57 | 1 | Vector<String> urls = new Vector<String>(); |
58 | 1 | for (RestClient cl : clients) |
59 | { | |
60 | 1 | System.out.println("" + (++i) + ": " + cl.service.toString()); |
61 | 1 | urls.add(cl.service.toString()); |
62 | } | |
63 | 1 | RestClient.setRsbsServices(urls); |
64 | ||
65 | 1 | RestClient[] restClients = RestClient.getRestClients(); |
66 | 1 | assertEquals("", clients.length, restClients.length); |
67 | ||
68 | /* | |
69 | * Check the two lists hold 'equal' (albeit different) objects. Ordering | |
70 | * should be the same as getRestClients returns the list in the same order | |
71 | * as setRsbsServices sets it. | |
72 | */ | |
73 | 2 | for (i = 0; i < clients.length; i++) |
74 | { | |
75 | /* | |
76 | * RestServiceDescription.equals() compares numerous fields | |
77 | */ | |
78 | 1 | assertEquals(clients[i].getRestDescription(), |
79 | restClients[i].getRestDescription()); | |
80 | } | |
81 | } | |
82 | } |