package jalview.ws.sifts;
import jalview.api.DBRefEntryI;
+import jalview.bin.Cache;
import jalview.datamodel.DBRefEntry;
import jalview.datamodel.DBRefSource;
import jalview.datamodel.Sequence;
@BeforeTest(alwaysRun = true)
public void populateExpectedMapping() throws SiftsException
- {
+ {
expectedMapping.put(51, new int[] { 1, 2 });
expectedMapping.put(52, new int[] { 2, 7 });
expectedMapping.put(53, new int[] { 3, 12 });
expectedMapping.put(145, new int[] { 95, 714 });
expectedMapping.put(146, new int[] { 96, 722 });
expectedMapping.put(147, new int[] { 97, 729 });
- }
-
+ }
+
@BeforeTest(alwaysRun = true)
public void setUpSiftsClient() throws SiftsException
{
+ // read test props before manipulating config
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
// SIFTs entries are updated weekly - so use saved SIFTs file to enforce
// test reproducibility
new SiftsSettings();
}
}
-
@Test(groups = { "Functional" })
public void getAllMappingAccessionTest()
{
try
{
HashMap<Integer, int[]> actualMapping = siftsClient.getGreedyMapping(
- "A", testSeq,
- null);
+ "A", testSeq, null);
Assert.assertEquals(testSeq.getStart(), 1);
Assert.assertEquals(testSeq.getEnd(), 147);
Assert.assertEquals(actualMapping, expectedMapping);
private void populateAtomPositionsNullTest1()
throws IllegalArgumentException, SiftsException
{
- siftsClient.populateAtomPositions(null, null);
+ siftsClient.populateAtomPositions(null, null);
}
@Test(
expectedExceptions = SiftsException.class)
public void getValidSourceDBRefExceptionTest() throws SiftsException
{
- SequenceI invalidTestSeq = new Sequence("testSeq", "ABCDEFGH");
+ SequenceI invalidTestSeq = new Sequence("testSeq", "ABCDEFGH");
try
{
siftsClient.getValidSourceDBRef(invalidTestSeq);
}
@Test(groups = { "Functional" })
- public void getEntityByMostOptimalMatchedIdTest()
+ public void getEntityByMostOptimalMatchedIdTest1()
{
SiftsClient siftsClientX = null;
PDBfile pdbFile;
Assert.assertEquals(entityD.getEntityId(), "D");
}
+
+ @Test(groups = { "Functional" })
+ public void getEntityByMostOptimalMatchedIdTest2()
+ {
+ // This test is for a SIFTS file in which entity A should map to chain P for
+ // the given PDB Id. All the other chains shouldn't be mapped as there are
+ // no SIFTS entity records for them.
+ SiftsClient siftsClientX = null;
+ PDBfile pdbFile;
+ try
+ {
+ pdbFile = new PDBfile(false, false, false,
+ "test/jalview/io/3ucu.cif", AppletFormatAdapter.FILE);
+ siftsClientX = new SiftsClient(pdbFile);
+ } catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ Entity entityA = siftsClientX.getEntityByMostOptimalMatchedId("P");
+ Entity entityP = siftsClientX.getEntityByMostOptimalMatchedId("A");
+ Entity entityR = siftsClientX.getEntityByMostOptimalMatchedId("R");
+ Assert.assertEquals(entityA.getEntityId(), "A");
+ Assert.assertNotEquals(entityR, "A");
+ Assert.assertNotEquals(entityP, "A");
+ Assert.assertNotEquals(entityR, "R");
+ Assert.assertNotEquals(entityP, "P");
+ Assert.assertNull(entityR);
+ Assert.assertNull(entityP);
+
+ }
}