Ejemplo n.º 1
0
        public void TestSquareMolecule()
        {
            IAtomContainer square = MakeSquare();

            var generators = new List <IGenerator <IAtomContainer> >
            {
                new BasicSceneGenerator(),
                new BasicBondGenerator()
            };
            BasicAtomGenerator atomGenerator = new BasicAtomGenerator();

            generators.Add(atomGenerator);

            AtomContainerRenderer renderer = new AtomContainerRenderer(generators, new WPFFontManager());
            RendererModel         model    = renderer.GetRenderer2DModel();

            model.SetCompactShape(AtomShapeType.Oval);
            model.SetCompactAtom(true);
            model.SetKekuleStructure(true);
            model.SetShowEndCarbons(true);

            ElementUtility visitor = new ElementUtility();
            var            screen  = new Rect(0, 0, 100, 100);

            renderer.Setup(square, screen);
            renderer.Paint(square, visitor);

            foreach (var element in visitor.GetElements())
            {
                Assert.IsTrue(visitor.ToString(element).Contains("Line") || visitor.ToString(element).Contains("Oval"));
            }
        }