@Test public void testComparingBitFingerprintAndCountBehavingAsBit() throws Exception { IAtomContainer mol1 = TestMoleculeFactory.make123Triazole(); IAtomContainer mol2 = TestMoleculeFactory.makeImidazole(); SignatureFingerprinter fingerprinter = new SignatureFingerprinter(1); ICountFingerprint countFp1 = fingerprinter.getCountFingerprint(mol1); ICountFingerprint countFp2 = fingerprinter.getCountFingerprint(mol2); countFp1.setBehaveAsBitFingerprint(true); countFp2.setBehaveAsBitFingerprint(true); IBitFingerprint bitFp1 = fingerprinter.getBitFingerprint(mol1); IBitFingerprint bitFp2 = fingerprinter.getBitFingerprint(mol2); double bitTanimoto = Tanimoto.calculate(bitFp1, bitFp2); double countTanimoto1 = Tanimoto.method1(countFp1, countFp2); double countTanimoto2 = Tanimoto.method2(countFp1, countFp2); Assert.assertEquals(countTanimoto1, countTanimoto2, 0.001); Assert.assertEquals(bitTanimoto, countTanimoto1, 0.001); } }