X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=test%2Fjalview%2Ffts%2Fservice%2Fpdb%2FPDBFTSRestClientTest.java;fp=test%2Fjalview%2Fws%2Fdbsources%2FPDBRestClientTest.java;h=cde7d155efcd4d345154542e2ff4dc46db1866ab;hp=f3cd9ef138018002d1b326d51cf25cc72ad55922;hb=db93a1adcbe0a4eaaf06e0a70ade0d6c5c1961c3;hpb=a90e2fe3cc3b779521a81cf8de410936f3a777c1 diff --git a/test/jalview/ws/dbsources/PDBRestClientTest.java b/test/jalview/fts/service/pdb/PDBFTSRestClientTest.java similarity index 59% rename from test/jalview/ws/dbsources/PDBRestClientTest.java rename to test/jalview/fts/service/pdb/PDBFTSRestClientTest.java index f3cd9ef..cde7d15 100644 --- a/test/jalview/ws/dbsources/PDBRestClientTest.java +++ b/test/jalview/fts/service/pdb/PDBFTSRestClientTest.java @@ -18,14 +18,14 @@ * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ -package jalview.ws.dbsources; +package jalview.fts.service.pdb; import static org.testng.AssertJUnit.assertEquals; import static org.testng.AssertJUnit.assertTrue; -import jalview.ws.dbsources.PDBRestClient.PDBDocField; -import jalview.ws.uimodel.PDBRestRequest; -import jalview.ws.uimodel.PDBRestResponse; +import jalview.fts.api.FTSDataColumnI; +import jalview.fts.core.FTSRestRequest; +import jalview.fts.core.FTSRestResponse; import java.io.BufferedReader; import java.io.FileReader; @@ -51,7 +51,7 @@ import com.sun.jersey.api.client.WebResource; import com.sun.jersey.api.client.config.ClientConfig; import com.sun.jersey.api.client.config.DefaultClientConfig; -public class PDBRestClientTest +public class PDBFTSRestClientTest { @BeforeMethod(alwaysRun = true) @@ -59,7 +59,7 @@ public class PDBRestClientTest { } - @AfterMethod + @AfterMethod(alwaysRun = true) public void tearDown() throws Exception { } @@ -67,24 +67,35 @@ public class PDBRestClientTest @Test(groups = { "External", "Network" }) public void executeRequestTest() { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.MOLECULE_TYPE); - wantedFields.add(PDBDocField.PDB_ID); - wantedFields.add(PDBDocField.GENUS); - wantedFields.add(PDBDocField.GENE_NAME); - wantedFields.add(PDBDocField.TITLE); - - PDBRestRequest request = new PDBRestRequest(); + List wantedFields = new ArrayList(); + try + { + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("molecule_type")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("genus")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("gene_name")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("title")); + } catch (Exception e1) + { + e1.printStackTrace(); + } + + FTSRestRequest request = new FTSRestRequest(); request.setAllowEmptySeq(false); request.setResponseSize(100); request.setFieldToSearchBy("text:"); request.setSearchTerm("abc"); request.setWantedFields(wantedFields); - PDBRestResponse response; + FTSRestResponse response; try { - response = new PDBRestClient().executeRequest(request); + response = PDBFTSRestClient.getInstance().executeRequest(request); } catch (Exception e) { e.printStackTrace(); @@ -99,16 +110,27 @@ public class PDBRestClientTest @Test(groups = { "Functional" }) public void getPDBDocFieldsAsCommaDelimitedStringTest() { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.MOLECULE_TYPE); - wantedFields.add(PDBDocField.PDB_ID); - wantedFields.add(PDBDocField.GENUS); - wantedFields.add(PDBDocField.GENE_NAME); - wantedFields.add(PDBDocField.TITLE); + List wantedFields = new ArrayList(); + try + { + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("molecule_type")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("genus")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("gene_name")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("title")); + } catch (Exception e) + { + e.printStackTrace(); + } String expectedResult = "molecule_type,pdb_id,genus,gene_name,title"; - String actualResult = PDBRestClient - .getPDBDocFieldsAsCommaDelimitedString(wantedFields); + String actualResult = PDBFTSRestClient.getInstance() + .getDataColumnsFieldsAsCommaDelimitedString(wantedFields); assertEquals("", expectedResult, actualResult); } @@ -116,14 +138,25 @@ public class PDBRestClientTest @Test(groups = { "External, Network" }) public void parsePDBJsonExceptionStringTest() { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.MOLECULE_TYPE); - wantedFields.add(PDBDocField.PDB_ID); - wantedFields.add(PDBDocField.GENUS); - wantedFields.add(PDBDocField.GENE_NAME); - wantedFields.add(PDBDocField.TITLE); - - PDBRestRequest request = new PDBRestRequest(); + List wantedFields = new ArrayList(); + try + { + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("molecule_type")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("genus")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("gene_name")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("title")); + } catch (Exception e1) + { + e1.printStackTrace(); + } + + FTSRestRequest request = new FTSRestRequest(); request.setAllowEmptySeq(false); request.setResponseSize(100); request.setFieldToSearchBy("text:"); @@ -139,7 +172,7 @@ public class PDBRestClientTest e.printStackTrace(); } - String parsedErrorResponse = PDBRestClient + String parsedErrorResponse = PDBFTSRestClient .parseJsonExceptionString(jsonErrorResponse); String expectedErrorMsg = "\n============= PDB Rest Client RunTime error =============\n" @@ -151,32 +184,43 @@ public class PDBRestClientTest assertEquals(expectedErrorMsg, parsedErrorResponse); } - @Test( - groups = { "External", "Network" }, - expectedExceptions = Exception.class) + @Test(groups = { "External" }, expectedExceptions = Exception.class) public void testForExpectedRuntimeException() throws Exception { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.PDB_ID); + List wantedFields = new ArrayList(); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); - PDBRestRequest request = new PDBRestRequest(); + FTSRestRequest request = new FTSRestRequest(); request.setFieldToSearchBy("text:"); request.setSearchTerm("abc OR text:go:abc"); request.setWantedFields(wantedFields); - new PDBRestClient().executeRequest(request); + PDBFTSRestClient.getInstance().executeRequest(request); } + // JBP: Is this actually external ? Looks like it is mocked @Test(groups = { "External" }) public void parsePDBJsonResponseTest() { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.MOLECULE_TYPE); - wantedFields.add(PDBDocField.PDB_ID); - wantedFields.add(PDBDocField.GENUS); - wantedFields.add(PDBDocField.GENE_NAME); - wantedFields.add(PDBDocField.TITLE); - - PDBRestRequest request = new PDBRestRequest(); + List wantedFields = new ArrayList(); + try + { + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("molecule_type")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("genus")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("gene_name")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("title")); + } catch (Exception e1) + { + e1.printStackTrace(); + } + + FTSRestRequest request = new FTSRestRequest(); request.setAllowEmptySeq(false); request.setWantedFields(wantedFields); @@ -188,7 +232,7 @@ public class PDBRestClientTest { e.printStackTrace(); } - PDBRestResponse response = PDBRestClient.parsePDBJsonResponse( + FTSRestResponse response = PDBFTSRestClient.parsePDBJsonResponse( jsonString, request); assertTrue(response.getSearchSummary() != null); assertTrue(response.getNumberOfItemsFound() == 931); @@ -198,14 +242,34 @@ public class PDBRestClientTest @Test(groups = { "Functional" }) public void getPDBIdColumIndexTest() { - List wantedFields = new ArrayList(); - wantedFields.add(PDBDocField.MOLECULE_TYPE); - wantedFields.add(PDBDocField.GENUS); - wantedFields.add(PDBDocField.GENE_NAME); - wantedFields.add(PDBDocField.TITLE); - wantedFields.add(PDBDocField.PDB_ID); - assertEquals(5, PDBRestClient.getPDBIdColumIndex(wantedFields, true)); - assertEquals(4, PDBRestClient.getPDBIdColumIndex(wantedFields, false)); + List wantedFields = new ArrayList(); + try + { + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("molecule_type")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("genus")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("gene_name")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("title")); + wantedFields.add(PDBFTSRestClient.getInstance() + .getDataColumnByNameOrCode("pdb_id")); + } catch (Exception e) + { + e.printStackTrace(); + } + try + { + assertEquals(5, PDBFTSRestClient.getInstance() + .getPrimaryKeyColumIndex(wantedFields, true)); + assertEquals(4, PDBFTSRestClient.getInstance() + .getPrimaryKeyColumIndex(wantedFields, false)); + } catch (Exception e) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } } @Test(groups = { "External" }) @@ -216,7 +280,7 @@ public class PDBRestClientTest // Build request parameters for the REST Request WebResource webResource = client - .resource(PDBRestClient.PDB_SEARCH_ENDPOINT) + .resource(PDBFTSRestClient.PDB_SEARCH_ENDPOINT) .queryParam("wt", "json").queryParam("rows", String.valueOf(1)) .queryParam("q", "text:abc AND molecule_sequence:['' TO *]"); @@ -255,9 +319,10 @@ public class PDBRestClientTest JSONObject pdbJsonDoc = docIter.next(); - for (PDBDocField field : PDBDocField.values()) + for (FTSDataColumnI field : PDBFTSRestClient.getInstance() + .getAllFTSDataColumns()) { - if (field == PDBDocField.ALL) + if (field.getName().equalsIgnoreCase("ALL")) { continue; }