@Test
public void testSgroupUnorderedMixture() throws Exception {

    try (MDLV2000Reader mdlr = new MDLV2000Reader(getClass().getResourceAsStream("/data/mdl/sgroup-unord-mixture.mol"))) {
        IAtomContainer container = mdlr.read(new AtomContainer());
        List<Sgroup> sgroups = container.getProperty(CDKConstants.CTAB_SGROUPS);
        assertNotNull(sgroups);
        assertThat(sgroups.size(), is(3));
        // first sgroup
        Sgroup sgroup = sgroups.get(0);
        assertThat(sgroup.getType(), is(SgroupType.CtabComponent));
        assertThat(sgroup.getParents().size(), is(1));
        assertThat(sgroup.getParents(), hasItem(sgroups.get(2)));
        // second sgroup
        sgroup = sgroups.get(1);
        assertThat(sgroup.getType(), is(SgroupType.CtabComponent));
        assertThat(sgroup.getParents().size(), is(1));
        assertThat(sgroup.getParents(), hasItem(sgroups.get(2)));
        // third sgroup
        sgroup = sgroups.get(2);
        assertThat(sgroup.getType(), is(SgroupType.CtabMixture));
        assertThat(sgroup.getParents().size(), is(0));
    }
}