X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fstructures%2Fmodels%2FAAStructureBindingModelTest.java;h=c1ad03a65f2dc5c1241106c94af44555d1468997;hb=2107a91322a1988a8a6b724c74f9d244795341e3;hp=5e0e52f8bddfb7b14e02b36d6e7d07d99f1a26c1;hpb=42f4227ed213d422a87d3b22fc9e85d14ffaf53f;p=jalview.git diff --git a/test/jalview/structures/models/AAStructureBindingModelTest.java b/test/jalview/structures/models/AAStructureBindingModelTest.java index 5e0e52f..c1ad03a 100644 --- a/test/jalview/structures/models/AAStructureBindingModelTest.java +++ b/test/jalview/structures/models/AAStructureBindingModelTest.java @@ -25,6 +25,18 @@ import static org.testng.Assert.assertFalse; import static org.testng.Assert.assertNotNull; import static org.testng.Assert.assertTrue; +import java.awt.Color; +import java.io.IOException; +import java.util.Arrays; +import java.util.BitSet; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.testng.annotations.BeforeClass; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.Test; + import jalview.api.AlignmentViewPanel; import jalview.api.SequenceRenderer; import jalview.datamodel.Alignment; @@ -40,25 +52,13 @@ import jalview.gui.JvOptionPane; import jalview.gui.StructureViewer.ViewerType; import jalview.io.DataSourceType; import jalview.io.FileFormats; +import jalview.io.FileLoader; import jalview.schemes.JalviewColourScheme; import jalview.structure.AtomSpec; import jalview.structure.AtomSpecModel; import jalview.structure.StructureCommandI; import jalview.structure.StructureMapping; import jalview.structure.StructureSelectionManager; - -import java.awt.Color; -import java.io.IOException; -import java.util.Arrays; -import java.util.BitSet; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.testng.annotations.BeforeClass; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - import junit.extensions.PA; /** @@ -234,7 +234,7 @@ public class AAStructureBindingModelTest ssm.setMapping(new SequenceI[] { seq3 }, null, PDB_3, DataSourceType.PASTE, null); - testee = newBindingModel(pdbFiles, seqs, ssm); + testee = newBindingModel(pdbFiles, seqs, ssm, null); } /** @@ -243,10 +243,11 @@ public class AAStructureBindingModelTest * @param pdbFiles * @param seqs * @param ssm + * @param alignPanel */ protected AAStructureBindingModel newBindingModel(PDBEntry[] pdbFiles, SequenceI[][] seqs, - StructureSelectionManager ssm) + StructureSelectionManager ssm, AlignmentViewPanel avp) { AAStructureBindingModel model = new AAStructureBindingModel(ssm, pdbFiles, seqs, null) @@ -254,7 +255,12 @@ public class AAStructureBindingModelTest @Override public String[] getStructureFiles() { - return new String[] { "INLINE1YCS", "INLINE3A6S", "INLINE1OOT" }; + String[] files = new String[getPdbCount()]; + for (int i = 0; i < this.getPdbCount(); i++) + { + files[i] = getPdbEntry(i).getFile(); + } + return files; } @Override @@ -274,9 +280,11 @@ public class AAStructureBindingModelTest @Override public SequenceRenderer getSequenceRenderer( - AlignmentViewPanel alignment) + AlignmentViewPanel avp) { - return null; + return avp == null ? null + : new jalview.gui.SequenceRenderer( + avp.getAlignViewport()); } @Override @@ -286,9 +294,20 @@ public class AAStructureBindingModelTest return null; } + /* + * for this test, let structure model ids be 0, 1, ... + * corresponding to first, second etc pdbfile + */ @Override - protected String getModelIdForFile(String chainId) + protected String getModelIdForFile(String pdbfile) { + for (int i = 0; i < this.getPdbCount(); i++) + { + if (pdbfile.equals(this.getPdbEntry(i).getFile())) + { + return String.valueOf(i); + } + } return ""; } @@ -399,10 +418,10 @@ public class AAStructureBindingModelTest * load these sequences, coloured by Strand propensity, * with columns 2-4 hidden */ - SequenceI seq1 = new Sequence("seq1", "MHRSQSSSGG"); - SequenceI seq2 = new Sequence("seq2", "MVRSNGGSSS"); - AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 }); - AlignFrame af = new AlignFrame(al, 800, 500); + String fasta = ">seq1\nMHRSQSSSGG\n>seq2\nMVRSNGGSSS"; + AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(fasta, + DataSourceType.PASTE); + AlignmentI al = af.getViewport().getAlignment(); af.changeColour_actionPerformed(JalviewColourScheme.Strand.toString()); ColumnSelection cs = new ColumnSelection(); cs.addElement(2); @@ -410,13 +429,12 @@ public class AAStructureBindingModelTest cs.addElement(4); af.getViewport().setColumnSelection(cs); af.hideSelColumns_actionPerformed(null); - SequenceRenderer sr = new jalview.gui.SequenceRenderer( - af.getViewport()); + SequenceI seq1 = al.getSequenceAt(0); + SequenceI seq2 = al.getSequenceAt(1); SequenceI[][] seqs = new SequenceI[][] { { seq1 }, { seq2 } }; - String[] files = new String[] { "seq1.pdb", "seq2.pdb" }; PDBEntry[] pdbFiles = new PDBEntry[2]; - pdbFiles[0] = new PDBEntry("PDB1", "A", Type.PDB, "INLINEPDB1"); - pdbFiles[1] = new PDBEntry("PDB2", "B", Type.PDB, "INLINEPDB2"); + pdbFiles[0] = new PDBEntry("PDB1", "A", Type.PDB, "seq1.pdb"); + pdbFiles[1] = new PDBEntry("PDB2", "B", Type.PDB, "seq2.pdb"); StructureSelectionManager ssm = new StructureSelectionManager(); /* @@ -434,14 +452,15 @@ public class AAStructureBindingModelTest "B", map, null); ssm.addStructureMapping(sm2); - AAStructureBindingModel binding = newBindingModel(pdbFiles, seqs, ssm); + AAStructureBindingModel binding = newBindingModel(pdbFiles, seqs, ssm, + af.alignPanel); /* * method under test builds a map of structures residues by colour * verify the map holds what it should */ - Map colours = binding.buildColoursMap(ssm, files, - seqs, sr, af.alignPanel); + Map colours = binding.buildColoursMap(ssm, seqs, + af.alignPanel); ChimeraCommands helper = new ChimeraCommands(); /*