package jalview.ext.jmol;
import static org.testng.AssertJUnit.assertEquals;
+import static org.testng.AssertJUnit.assertNotNull;
import static org.testng.AssertJUnit.assertTrue;
import jalview.bin.Cache;
import jalview.io.AppletFormatAdapter;
import jalview.io.FileLoader;
import jalview.structure.StructureImportSettings;
+import jalview.structure.StructureImportSettings.StructureParser;
+import java.io.IOException;
import java.util.Vector;
import org.jmol.c.STR;
@BeforeMethod(alwaysRun = true)
public void setUp()
{
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
Cache.applicationProperties.setProperty("STRUCT_FROM_PDB",
Boolean.TRUE.toString());
+ Cache.applicationProperties.setProperty("ADD_TEMPFACT_ANN",
+ Boolean.FALSE.toString());
Cache.applicationProperties.setProperty("ADD_SS_ANN",
Boolean.TRUE.toString());
+ StructureImportSettings.setDefaultStructureFileFormat("PDB");
+ StructureImportSettings
+ .setDefaultPDBFileParser(StructureParser.JALVIEW_PARSER);
}
@Test(groups = { "Functional" })
@Test(groups = { "Functional" })
public void testFileParser() throws Exception
{
- StructureImportSettings.setProcessHETATMs(false);
for (String pdbStr : testFile)
{
PDBfile mctest = new PDBfile(false, false, false, pdbStr,
AppletFormatAdapter.FILE);
- JmolParser jtest = new JmolParser(false, false, false, pdbStr,
- jalview.io.AppletFormatAdapter.FILE);
+ JmolParser jtest = new JmolParser(pdbStr, AppletFormatAdapter.FILE);
Vector<SequenceI> seqs = jtest.getSeqs(), mcseqs = mctest.getSeqs();
assertTrue(
validateSecStrRows(al);
}
}
- StructureImportSettings.setProcessHETATMs(true);
- for (String pdbStr : testFile)
- {
- PDBfile mctest = new PDBfile(false, false, false, pdbStr,
- AppletFormatAdapter.FILE);
- JmolParser jtest = new JmolParser(false, false, false, pdbStr,
- jalview.io.AppletFormatAdapter.FILE);
- Vector<SequenceI> seqs = jtest.getSeqs(), mcseqs = mctest.getSeqs();
- assertTrue(
- "No sequences extracted from testfile\n"
- + (jtest.hasWarningMessage() ? jtest.getWarningMessage()
- : "(No warnings raised)"), seqs != null
- && seqs.size() > 0);
- for (SequenceI sq : seqs)
- {
- assertEquals("JMol didn't process " + pdbStr
- + " to the same sequence as MCView",
- sq.getSequenceAsString(), mcseqs.remove(0)
- .getSequenceAsString());
- AlignmentI al = new Alignment(new SequenceI[] { sq });
- validateSecStrRows(al);
- }
- }
}
private void validateSecStrRows(AlignmentI al)
private void checkFirstAAIsAssoc(SequenceI sq)
{
- assertTrue("No secondary structure assigned for protein sequence.",
+ assertTrue("No secondary structure assigned for protein sequence for "
+ + sq.getName(),
sq.getAnnotation() != null && sq.getAnnotation().length >= 1
&& sq.getAnnotation()[0].hasIcons);
assertTrue(
public void testParse_missingResidues() throws Exception
{
PDBfile mctest = new PDBfile(false, false, false,
- pastePDBDataWithChainBreak,
+ pastePDBDataWithChainBreak, AppletFormatAdapter.PASTE);
+ JmolParser jtest = new JmolParser(pastePDBDataWithChainBreak,
AppletFormatAdapter.PASTE);
- boolean annotFromStructure = false;
- boolean localSecondaryStruct = false;
- boolean serviceSecondaryStruct = false;
- JmolParser jtest = new JmolParser(annotFromStructure,
- localSecondaryStruct, serviceSecondaryStruct,
- pastePDBDataWithChainBreak,
- jalview.io.AppletFormatAdapter.PASTE);
Vector<SequenceI> seqs = jtest.getSeqs();
Vector<SequenceI> mcseqs = mctest.getSeqs();
{
PDBfile mctest = new PDBfile(false, false, false, pdbWithAltLoc,
AppletFormatAdapter.PASTE);
- boolean annotFromStructure = false;
- boolean localSecondaryStruct = false;
- boolean serviceSecondaryStruct = false;
- JmolParser jtest = new JmolParser(annotFromStructure,
- localSecondaryStruct, serviceSecondaryStruct, pdbWithAltLoc,
- jalview.io.AppletFormatAdapter.PASTE);
+ JmolParser jtest = new JmolParser(pdbWithAltLoc,
+ AppletFormatAdapter.PASTE);
Vector<SequenceI> seqs = jtest.getSeqs();
Vector<SequenceI> mcseqs = mctest.getSeqs();
-
+
assertEquals("Failed to find 1 sequence\n", 1, seqs.size());
assertEquals("Failed to find 1 sequence\n", 1, mcseqs.size());
assertEquals("ALC", seqs.get(0).getSequenceAsString());
assertEquals('H', structCode[4]);
assertEquals('E', structCode[5]);
}
+
+ @Test(groups = "Functional")
+ public void testLocalPDBId()
+ {
+ JmolParser structureData;
+ try
+ {
+ structureData = new JmolParser("examples/DNMT1_MOUSE.pdb",
+ AppletFormatAdapter.FILE);
+ assertNotNull(structureData);
+ assertNotNull(structureData.getId());
+ assertEquals(structureData.getId(), "DNMT1_MOUSE.pdb");
+ assertNotNull(structureData.getSeqs());
+ assertNotNull(structureData.getSeqs().get(0).getSequenceFeatures()[0].featureGroup);
+ assertEquals(
+ structureData.getSeqs().get(0).getSequenceFeatures()[0].featureGroup,
+ "dnmt1_mouse.pdb");
+ } catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
}