@Test
public void testS2() throws Exception {

    IAtomContainer mol = DefaultChemObjectBuilder.getInstance().newInstance(IAtomContainer.class);
    IAtom s = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "S");
    s.setImplicitHydrogenCount(2);
    mol.addAtom(s);
    StructGenMatcher matcher = new StructGenMatcher();
    IAtomType matched;
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(0));
    assertAtomType(testedAtomTypes, "S2", matched);
    mol = DefaultChemObjectBuilder.getInstance().newInstance(IAtomContainer.class);
    s = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "S");
    IAtom h1 = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "H");
    IAtom h2 = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "H");
    IBond b1 = DefaultChemObjectBuilder.getInstance().newInstance(IBond.class, s, h1, IBond.Order.SINGLE);
    IBond b2 = DefaultChemObjectBuilder.getInstance().newInstance(IBond.class, s, h2, IBond.Order.SINGLE);
    mol.addAtom(s);
    mol.addAtom(h1);
    mol.addAtom(h2);
    mol.addBond(b1);
    mol.addBond(b2);
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(0));
    assertAtomType(testedAtomTypes, "S2", matched);
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(1));
    assertAtomType(testedAtomTypes, "H1", matched);
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(2));
    assertAtomType(testedAtomTypes, "H1", matched);
}