public void TestSpecificPermutation(Molecule molecule, int[] permutation) { string signature = new MoleculeSignature(molecule).GetMolecularSignature(); PrintIdentity(molecule, signature); AtomPermutor permutor = new AtomPermutor(molecule); permutor.SetPermutation(permutation); Molecule permutedMolecule = permutor.First(); string permutedSignature = new MoleculeSignature(permutedMolecule).GetMolecularSignature(); Console.Out.WriteLine(permutedMolecule + "\t" + Arrays.ToJavaString(permutor.GetCurrentPermutation()) + "\t" + permutedSignature + "\t" + signature.Equals(permutedSignature)); Assert.AreEqual(signature, permutedSignature); }
public void PermuteCompletely(Molecule molecule) { string signature = new MoleculeSignature(molecule).GetMolecularSignature(); PrintIdentity(molecule, signature); AtomPermutor permutor = new AtomPermutor(molecule); foreach (var permutedMolecule in permutor) { string permutedSignature = new MoleculeSignature(permutedMolecule).GetMolecularSignature(); Console.Out.WriteLine(permutedMolecule + "\t" + Arrays.ToJavaString(permutor.GetCurrentPermutation()) + "\t" + permutedSignature + "\t" + signature.Equals(permutedSignature)); Assert.AreEqual(signature, permutedSignature); } }