@Test
@Category(SlowTest.class)
public void testPartialPiChargeDescriptor_FormicAcid() throws
        Exception {

    double[] testResult = {0.0221, -0.1193, 0.0972, 0.0, 0.0};/*
                                                               * from Petra
                                                               * online:
                                                               * http
                                                               * ://www2.
                                                               * chemie
                                                               * .uni-erlangen
                                                               * .
                                                               * de/services
                                                               * /
                                                               * petra/smiles
                                                               * .phtml
                                                               */
    IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();
    IAtomContainer molecule = builder.newInstance(IAtomContainer.class);
    molecule.addAtom(builder.newInstance(IAtom.class, "C"));
    molecule.addAtom(builder.newInstance(IAtom.class, "O"));
    molecule.addBond(0, 1, IBond.Order.DOUBLE);
    molecule.addAtom(builder.newInstance(IAtom.class, "O"));
    molecule.addBond(0, 2, IBond.Order.SINGLE);
    AtomContainerManipulator.percieveAtomTypesAndConfigureAtoms(molecule);
    addExplicitHydrogens(molecule);
    lpcheck.saturate(molecule);
    for (int i = 0; i < molecule.getAtomCount(); i++) {
        double result = ((DoubleResult) descriptor.calculate(molecule.getAtom(i), molecule).getValue())
                .doubleValue();
        Assert.assertEquals(testResult[i], result, 0.05);
    }
}