private void MoveShapeControlPoint(Shape shape, ControlPointId pointId, int deltaX, int deltaY, ResizeModifiers modifiers) { Point origPointPos = shape.GetControlPointPosition(pointId); Point p = origPointPos, ptPos = origPointPos; // Move point to new position if (shape.MoveControlPointBy(pointId, deltaX, deltaY, modifiers)) { p.Offset(deltaX, deltaY); ptPos = shape.GetControlPointPosition(pointId); Assert.IsTrue(Math.Abs(p.X - ptPos.X) <= 1); Assert.IsTrue(Math.Abs(p.Y - ptPos.Y) <= 1); if (shape.MoveControlPointBy(pointId, -deltaX, -deltaY, modifiers)) { p.Offset(-deltaX,-deltaY); ptPos = shape.GetControlPointPosition(pointId); Assert.IsTrue(Math.Abs(p.X - ptPos.X) <= 1); Assert.IsTrue(Math.Abs(p.Y - ptPos.Y) <= 1); } } // Move point back to original position if (shape.MoveControlPointTo(pointId, origPointPos.X, origPointPos.Y, modifiers)) Assert.AreEqual(origPointPos, shape.GetControlPointPosition(pointId)); //ptPos = shape.GetControlPointPosition(pointId); //Assert.IsTrue(Math.Abs(origPointPos.X - ptPos.X) <= 1); //Assert.IsTrue(Math.Abs(origPointPos.Y - ptPos.Y) <= 1); }