@Test public void atomStereoReordered2() { QueryAtomContainer mol = new QueryAtomContainer(null); assertTrue(Smarts.parse(mol, "C[C@H](O)CC")); IAtom[] atoms = AtomContainerManipulator.getAtomArray(mol); swap(atoms, 0, 1); mol.setAtoms(atoms); assertThat(Smarts.generate(mol), is("[C@@H1](C)(O)CC")); }
@Test public void bondStereoCisThenTransUnspecWithNbr() { QueryAtomContainer mol = new QueryAtomContainer(null); assertTrue(Smarts.parse(mol, "C/C=C(C)\\C=C\\?O")); assertThat(Smarts.generate(mol), is("C/C=C(C)\\C=C\\?O")); IAtom[] atoms = AtomContainerManipulator.getAtomArray(mol); swap(atoms, 0, atoms.length-1); mol.setAtoms(atoms); assertThat(Smarts.generate(mol), is("O/?C=C/C(=C\\C)C")); }
@Test public void atomStereoReordered3() { QueryAtomContainer mol = new QueryAtomContainer(null); assertTrue(Smarts.parse(mol, "[C@H](C)(O)CC")); IAtom[] atoms = AtomContainerManipulator.getAtomArray(mol); swap(atoms, 0, 1); mol.setAtoms(atoms); assertThat(Smarts.generate(mol), is("C[C@@H1](O)CC")); }
@Test public void bondStereoTrans() { QueryAtomContainer mol = new QueryAtomContainer(null); assertTrue(Smarts.parse(mol, "C/C=C/C")); assertThat(Smarts.generate(mol), is("C/C=C/C")); IAtom[] atoms = AtomContainerManipulator.getAtomArray(mol); swap(atoms, 0, 1); mol.setAtoms(atoms); assertThat(Smarts.generate(mol), is("C(\\C)=C/C")); }