public static void FireEvent(this Page myPage, WebFormEvent e, EventArgs args) { Dictionary <WebFormEvent, bool> _EventsTriggered = new Dictionary <WebFormEvent, bool>(); if (myPage.Items.Contains("eventsTriggered")) { _EventsTriggered = myPage.Items["eventsTriggered"] as Dictionary <WebFormEvent, bool>; } if (_EventsTriggered.ContainsKey(e)) { throw new InvalidOperationException($"Previously triggered the {e.ToString()} event"); } _EventsTriggered.Add(e, true); myPage.Items["eventsTriggered"] = _EventsTriggered; string methodName = ""; switch (e) { case WebFormEvent.Init: //methodName = "OnInit"; break; case WebFormEvent.Load: methodName = "OnLoad"; break; case WebFormEvent.PreRender: methodName = "OnPreRender"; break; case WebFormEvent.Unload: methodName = "OnUnload"; break; default: break; } if (methodName == string.Empty) { return; } var thisMethod = _Type.GetMethod(methodName, BindingFlags.Instance | BindingFlags.NonPublic); thisMethod.Invoke(myPage, new object[] { args }); }
public void StopAtCorrectEvent(WebFormEvent evt) { // Arrange base.context.SetupGet(c => c.IsDebuggingEnabled).Returns(true); // Act var sut = WebApplicationProxy.GetPageByLocation <Web.Scenarios.RunToEvent.VerifyOrder>("/Scenarios/RunToEvent/VerifyOrder.aspx"); sut.RunToEvent(evt); // Assert int eventCount = (int)evt; Assert.Equal(eventCount, sut.EventList.Count); }
public static void RunToEvent(this Page myPage, WebFormEvent evt = WebFormEvent.None) { myPage.FireEvent(WebFormEvent.Init); if (evt == WebFormEvent.Init) { return; } myPage.FireEvent(WebFormEvent.Load); if (evt == WebFormEvent.Load) { return; } myPage.FireEvent(WebFormEvent.PreRender); if (evt == WebFormEvent.PreRender) { return; } myPage.FireEvent(WebFormEvent.Unload); }
public static void FireEvent(this Page myPage, WebFormEvent e) { myPage.FireEvent(e, EventArgs.Empty); }