예제 #1
0
        public RightTriangleFigure()
        {
            points = new List <Point>();

            painter    = new PolygonPainter();
            calculator = new RightTriangleCalculator();
            mover      = new PolygonMover();
            mover      = new PolygonMover();
            checker    = new PolygonChecker();
        }
예제 #2
0
        public RightTriangleFigure(Color color, int width)
        {
            points   = new List <Point>();
            this.pen = new Pen(color, width);

            painter    = new PolygonPainter();
            calculator = new RightTriangleCalculator();
            mover      = new PolygonMover();
            mover      = new PolygonMover();
            checker    = new PolygonChecker();
        }
예제 #3
0
        public void FindsLeftTriangleAtF12()
        {
            var moqGridReference = new Mock <IGridReference>();

            moqGridReference.Setup(x => x.Column)
            .Returns(() => 12);
            moqGridReference.Setup(x => x.GetNumericRow())
            .Returns(() => 6);

            var moqGrid = new Mock <IGrid>();

            moqGrid.Setup(x => x.CellSize)
            .Returns(() => 10);

            RightTriangleCalculator rightTriangleFinder = new RightTriangleCalculator();
            IGridShape triangle = rightTriangleFinder.Calculate(moqGrid.Object, moqGridReference.Object);

            Assert.Equal(3, triangle.Coordinates.Count);
            Assert.Contains(triangle.Coordinates, (c) => c.X == 50 && c.Y == 50);
            Assert.Contains(triangle.Coordinates, (c) => c.X == 60 && c.Y == 50);
            Assert.Contains(triangle.Coordinates, (c) => c.X == 60 && c.Y == 60);
        }