@Test
public void testN3acid() throws Exception {

    IAtomContainer mol = DefaultChemObjectBuilder.getInstance().newInstance(IAtomContainer.class);
    IAtom n = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "N");
    IAtom o = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "O");
    IAtom h = DefaultChemObjectBuilder.getInstance().newInstance(IAtom.class, "H");
    IBond b1 = DefaultChemObjectBuilder.getInstance().newInstance(IBond.class, n, o, IBond.Order.DOUBLE);
    IBond b2 = DefaultChemObjectBuilder.getInstance().newInstance(IBond.class, n, h, IBond.Order.SINGLE);
    mol.addAtom(n);
    mol.addAtom(o);
    mol.addAtom(h);
    mol.addBond(b1);
    mol.addBond(b2);
    StructGenMatcher matcher = new StructGenMatcher();
    IAtomType matched;
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(0));
    assertAtomType(testedAtomTypes, "N3", matched);
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(1));
    assertAtomType(testedAtomTypes, "O2", matched);
    matched = matcher.findMatchingAtomType(mol, mol.getAtom(2));
    assertAtomType(testedAtomTypes, "H1", matched);
}