public void ZoomAndUnzoomTest() { var controller = TestFactory.CreateApplicationController(); TestFactory.CreateBaseServices(controller, null, out IGridState gridState, out IDataDrawState graphState, out IItemFormatter itemFormatter, out IMargin margin, out IDataService dataService, out IScaleService scaleService); int iterations = 100000; var state = new ScaleState(scaleService.State); for (int i = 0; i < iterations; i++) { scaleService.Zoom(-120); } for (int i = 0; i < iterations && !state.Equals(scaleService.State); i++) { scaleService.Zoom(-120); } Assert.IsTrue(state.Equals(scaleService.State), $"State before zooming/unzooming not the same as before"); }