public class ChimeraCommandsTest
{
-
private SequenceRenderer sr;
+
+ private String[] files;
private AAStructureBindingModel mockBinding = new AAStructureBindingModel(
null, null)
@Override
public String[] getStructureFiles()
{
- return null;
+ return files;
}
@Override
@Test(groups = { "Functional" })
public void testBuildColourCommands()
{
-
Map<Object, AtomSpecModel> map = new LinkedHashMap<>();
- ChimeraCommands.addMapRange(map, Color.blue, 0, 2, 5, "A");
- ChimeraCommands.addMapRange(map, Color.blue, 0, 7, 7, "B");
- ChimeraCommands.addMapRange(map, Color.blue, 0, 9, 23, "A");
- ChimeraCommands.addMapRange(map, Color.blue, 1, 1, 1, "A");
- ChimeraCommands.addMapRange(map, Color.blue, 1, 4, 7, "B");
- ChimeraCommands.addMapRange(map, Color.yellow, 1, 8, 8, "A");
- ChimeraCommands.addMapRange(map, Color.yellow, 1, 3, 5, "A");
- ChimeraCommands.addMapRange(map, Color.red, 0, 3, 5, "A");
- ChimeraCommands.addMapRange(map, Color.red, 0, 6, 9, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.blue, 0, 2, 5, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.blue, 0, 7, 7, "B");
+ ChimeraCommands.addAtomSpecRange(map, Color.blue, 0, 9, 23, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.blue, 1, 1, 1, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.blue, 1, 4, 7, "B");
+ ChimeraCommands.addAtomSpecRange(map, Color.yellow, 1, 8, 8, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.yellow, 1, 3, 5, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.red, 0, 3, 5, "A");
+ ChimeraCommands.addAtomSpecRange(map, Color.red, 0, 6, 9, "A");
// Colours should appear in the Chimera command in the order in which
// they were added; within colour, by model, by chain, ranges in start order
* start with just one feature/value...
*/
featuresMap.put("chain", featureValues);
- ChimeraCommands.addMapRange(featureValues, "X", 0, 8, 20, "A");
+ ChimeraCommands.addAtomSpecRange(featureValues, "X", 0, 8, 20, "A");
List<String> commands = ChimeraCommands
.buildSetAttributeCommands(featuresMap, mockBinding);
assertEquals(commands.get(0), "setattr r jv_chain 'X' #0:8-20.A");
// add same feature value, overlapping range
- ChimeraCommands.addMapRange(featureValues, "X", 0, 3, 9, "A");
+ ChimeraCommands.addAtomSpecRange(featureValues, "X", 0, 3, 9, "A");
// same feature value, contiguous range
- ChimeraCommands.addMapRange(featureValues, "X", 0, 21, 25, "A");
+ ChimeraCommands.addAtomSpecRange(featureValues, "X", 0, 21, 25, "A");
commands = ChimeraCommands.buildSetAttributeCommands(featuresMap,
mockBinding);
assertEquals(1, commands.size());
assertEquals(commands.get(0), "setattr r jv_chain 'X' #0:3-25.A");
// same feature value and model, different chain
- ChimeraCommands.addMapRange(featureValues, "X", 0, 21, 25, "B");
+ ChimeraCommands.addAtomSpecRange(featureValues, "X", 0, 21, 25, "B");
// same feature value and chain, different model
- ChimeraCommands.addMapRange(featureValues, "X", 1, 26, 30, "A");
+ ChimeraCommands.addAtomSpecRange(featureValues, "X", 1, 26, 30, "A");
commands = ChimeraCommands.buildSetAttributeCommands(featuresMap,
mockBinding);
assertEquals(1, commands.size());
"setattr r jv_chain 'X' #0:3-25.A,21-25.B|#1:26-30.A");
// same feature, different value
- ChimeraCommands.addMapRange(featureValues, "Y", 0, 40, 50, "A");
+ ChimeraCommands.addAtomSpecRange(featureValues, "Y", 0, 40, 50, "A");
commands = ChimeraCommands.buildSetAttributeCommands(featuresMap,
mockBinding);
assertEquals(2, commands.size());
featuresMap.clear();
featureValues.clear();
featuresMap.put("side-chain binding!", featureValues);
- ChimeraCommands.addMapRange(featureValues,
+ ChimeraCommands.addAtomSpecRange(featureValues,
"<html>metal <a href=\"http:a.b.c/x\"> 'ion!", 0, 7, 15,
"A");
// feature names are sanitised to change non-alphanumeric to underscore
af.hideSelColumns_actionPerformed(null);
sr = new SequenceRenderer(af.getViewport());
SequenceI[][] seqs = new SequenceI[][] { { seq1 }, { seq2 } };
- String[] files = new String[] { "seq1.pdb", "seq2.pdb" };
+ files = new String[] { "seq1.pdb", "seq2.pdb" };
StructureSelectionManager ssm = new StructureSelectionManager();
/*
PA.setValue(mockBinding, "ssm", ssm);
PA.setValue(mockBinding, "sequence", seqs);
+ Map<Object, AtomSpecModel> colourMap = mockBinding
+ .buildColoursMap(af.alignPanel);
String[] commands = ChimeraCommands
- .getColourBySequenceCommand(files, af.alignPanel, mockBinding);
+ .getColourBySequenceCommand(colourMap, mockBinding);
assertEquals(1, commands.length);
String theCommand = commands[0];
// M colour is #82827d (see strand.html help page)