PDBPolymer extends BioPolymer implements Cloneable, IPDBPolymer { public Collection<String> getMonomerNamesInSequentialOrder() { return new ArrayList<String>(sequentialListOfMonomers); } PDBPolymer(); @Override void addStructure(IPDBStructure structure); @Override Collection<IPDBStructure> getStructures(); @Override void addAtom(IPDBAtom oAtom); void addAtom(IPDBAtom oAtom, IMonomer oMonomer); @Override void addAtom(IPDBAtom oAtom, IMonomer oMonomer, IStrand oStrand); Collection<String> getMonomerNamesInSequentialOrder(); @Override IPDBPolymer clone(); @Override String toString();  }
@Test public void testGetMonomerNamesInSequentialOrder() { PDBPolymer pdbPolymer = new PDBPolymer(); Assert.assertEquals(0, pdbPolymer.getMonomerNames().size()); IStrand oStrand1 = pdbPolymer.getBuilder().newInstance(IStrand.class); oStrand1.setStrandName("A"); IMonomer oMono1 = pdbPolymer.getBuilder().newInstance(IMonomer.class); oMono1.setMonomerName("TRP279"); IMonomer oMono2 = pdbPolymer.getBuilder().newInstance(IMonomer.class); oMono2.setMonomerName("CYS280"); IPDBAtom oPDBAtom2 = pdbPolymer.getBuilder().newInstance(IPDBAtom.class, "C"); IPDBAtom oPDBAtom3 = pdbPolymer.getBuilder().newInstance(IPDBAtom.class, "C"); pdbPolymer.addAtom(oPDBAtom2, oMono1, oStrand1); pdbPolymer.addAtom(oPDBAtom3, oMono2, oStrand1); Assert.assertNotNull(pdbPolymer.getAtom(0)); Assert.assertNotNull(pdbPolymer.getAtom(1)); Assert.assertEquals(oPDBAtom2, pdbPolymer.getAtom(0)); Assert.assertEquals(oPDBAtom3, pdbPolymer.getAtom(1)); Iterator<String> monomers = pdbPolymer.getMonomerNamesInSequentialOrder().iterator(); Assert.assertEquals("TRP279", monomers.next()); Assert.assertEquals("CYS280", monomers.next()); }