@Override public boolean hasNext() { boolean slurpedConformers = false; if (lastMol != null) container = new ConformerContainer(lastMol); if (!nextIsKnown) { while (imdlr.hasNext()) { slurpedConformers = true; IAtomContainer mol = (IAtomContainer) imdlr.next(); if (container.size() == 0) container.add(mol); else { if (container.getTitle().equals(mol.getTitle())) container.add(mol); else { lastMol = mol; hasNext = true; break; } } } hasNext = container.size() > 0 && slurpedConformers; } if (!hasNext) container = null; nextIsKnown = true; return hasNext; }
@Test public void testAdd_int_Object() { ConformerContainer container = new ConformerContainer(confs); container.add(5, confs[5]); }
@Test public void testAdd_int_IAtomContainer() { ConformerContainer container = new ConformerContainer(confs); container.add(5, confs[5]); }
@Test(expected = IllegalArgumentException.class) public void testAdd_IAtomContainer() { ConformerContainer container = new ConformerContainer(confs); base.setTitle("junk"); container.add(base); }
@Test public void testConformerContainer() { ConformerContainer container = new ConformerContainer(); Assert.assertNotNull(container); base.setTitle("myMolecule"); container.add(base); Assert.assertEquals(1, container.size()); for (IAtomContainer conf : confs) container.add(conf); Assert.assertEquals(nconfs + 1, container.size()); }
@Test public void testAdd_Object() { ConformerContainer container = new ConformerContainer(); Assert.assertNotNull(container); for (IAtomContainer conf : confs) container.add(conf); Assert.assertEquals(nconfs, container.size()); }
@Test public void testRemove_int() { ConformerContainer container = new ConformerContainer(confs); container.clear(); Assert.assertEquals(0, container.size()); for (int i = 0; i < nconfs; i++) container.add(confs[i]); Assert.assertEquals(nconfs, container.size()); container.remove(0); Assert.assertEquals(nconfs - 1, container.size()); }