@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 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()); }
@Test public void testSize() { ConformerContainer container = new ConformerContainer(confs); Assert.assertEquals(nconfs, container.size()); }
@Test(expected = IndexOutOfBoundsException.class) public void testGet2() { ConformerContainer container = new ConformerContainer(confs); for (int i = 0; i < container.size() + 1; i++) container.get(i); }
@Test(expected = UnsupportedOperationException.class) public void testRemoveAll_Collection() { ConformerContainer container = new ConformerContainer(confs); Assert.assertNotNull(container); Assert.assertEquals(nconfs, container.size()); container.removeAll(container); Assert.assertEquals(0, container.size()); }
@Test public void testConformerContainer_IAtomContainer() { ConformerContainer container = new ConformerContainer(base); Assert.assertNotNull(container); Assert.assertEquals(1, container.size()); }
@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 testConformerContainer_arrayIAtomContainer() { ConformerContainer container = new ConformerContainer(confs); Assert.assertNotNull(container); Assert.assertEquals(nconfs, container.size()); }
@Test public void testRemove_Object() { ConformerContainer cContainer = new ConformerContainer(confs); Assert.assertEquals(nconfs, cContainer.size()); IAtomContainer container = cContainer.get(3); Assert.assertTrue(cContainer.contains(container)); cContainer.remove(container); Assert.assertEquals(nconfs - 1, cContainer.size()); Assert.assertFalse(cContainer.contains(container)); }
@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 testContains_Object() { ConformerContainer container = new ConformerContainer(confs); Assert.assertEquals(nconfs, container.size()); Assert.assertTrue(container.contains(container.get(3))); }
@Test(expected = UnsupportedOperationException.class) public void testContainsAll_Collection() { ConformerContainer container = new ConformerContainer(confs); Assert.assertNotNull(container); Assert.assertEquals(nconfs, container.size()); Assert.assertTrue(container.containsAll(container)); }
@Test public void testAddAll_Collection() { ConformerContainer container = new ConformerContainer(confs); Assert.assertEquals(nconfs, container.size()); Assert.assertTrue(container.contains(container.get(3))); }
@Test public void testSDF() throws Exception { String filename = "data/mdl/iterconftest.sdf"; logger.info("Testing: " + filename); InputStream ins = this.getClass().getClassLoader().getResourceAsStream(filename); IteratingMDLConformerReader reader = new IteratingMDLConformerReader(ins, DefaultChemObjectBuilder.getInstance()); int molCount = 0; int[] nconfs = new int[3]; int i = 0; while (reader.hasNext()) { ConformerContainer confContainer = (ConformerContainer) reader.next(); Assert.assertNotNull(confContainer); nconfs[i++] = confContainer.size(); molCount++; } Assert.assertEquals(3, molCount); Assert.assertEquals(3, nconfs[0]); Assert.assertEquals(18, nconfs[1]); Assert.assertEquals(18, nconfs[2]); }
@Test public void testLastIndexOf_Object() { ConformerContainer container = new ConformerContainer(confs); Assert.assertEquals(nconfs, container.size()); int x = container.lastIndexOf(container.get(3)); Assert.assertEquals(3, container.lastIndexOf(container.get(3))); }