/// <summary> /// Disabled until we fix the AutoEventWireup feature /// </summary> public void LoadEventWiredUp() { // Arrange // Act var sut = WebApplicationProxy.GetPageByLocation <AutoEventWireup>("/AutoEventWireup.aspx"); sut.FireEvent(WebFormEvent.Init); sut.FireEvent(WebFormEvent.Load); // Assert var responseText = sut.RenderHtml(); Assert.Contains(AutoEventWireup.LOAD_INDICATOR, responseText); }
public void GetPageByLocationShouldHandleContext() { // Arrange Action <HttpContext> addContext = new Action <HttpContext>(ctx => ctx.Items.Add("test", "test")); var defaultPage = WebApplicationProxy.GetPageByLocation <_Default>("/Default.aspx", addContext); // Act //HttpContext.Current.Items.Add("test", "test"); //var myDict = new Dictionary<string, string>(); //myDict.Add("test", "test"); //base.context.SetupGet(c => c.Items).Returns(myDict); // Assert Assert.True(defaultPage.Context().Items.Contains("test")); }
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 void OriginalValueSet() { // Arrange // Act var sut = WebApplicationProxy.GetPageByLocation <PageWithUserControl>("/Scenarios/ControlTree/PageWithUserControl.aspx"); sut.RunToEvent(WebFormEvent.PreRender); // Assert var theControl = sut.FindControl("MyLinkControl") as MyLinkControl; var theLink = theControl.FindControl("myLink") as LinkButton; Assert.Equal("New Text", theControl.LinkButtonText); Assert.Equal("DoStuff", theLink.CommandName); }
public void FireTriggersClickEvent() { // Arrange var page = WebApplicationProxy.GetPageByLocation <Buttons_AutoId>("/Scenarios/ControlTree/Buttons_AutoId.aspx"); // Run to PreRender, the buttons are in a FormView that is databound in Load page.RunToEvent(WebFormEvent.PreRender); // Act var sut = page.ButtonA; sut.FireEvent("Click", null); // Assert Assert.False(sut.Enabled); }
public void TextboxContentChanged() { // Arrange var postData = new NameValueCollection(); const string NEW_TEXT = "Posted back"; postData.Add("TestTextboxControl", NEW_TEXT); // Act var sut = WebApplicationProxy.GetPageByLocation <Textbox_StaticId>("/Scenarios/Postback/Textbox_StaticId.aspx"); sut.MockPostData(postData); sut.RunToEvent(WebFormEvent.PreRender); // Assert Assert.Equal(NEW_TEXT, sut.TestControl.Text); }
public void IsAvailable() { // Arrange //var cache = WebApplicationProxy.Cache; var TEST_VALUE = new Uri("http://www.github.com"); //cache.Insert("url", TEST_VALUE); //context.SetupGet(ctx => ctx.Cache).Returns(cache); // Act var sut = WebApplicationProxy.GetPageByLocation <_Default>("/default.aspx"); HttpContext.Current.Cache.Insert("url", TEST_VALUE); //sut.Context = context.Object; // Assert Assert.NotNull(sut.Context().Cache.Get("url")); Assert.Equal(TEST_VALUE, sut.Context().Cache.Get("url")); }
public void VerifyControlIsConfiguredProperly() { // Arrange var sut = WebApplicationProxy.GetPageByLocation <Textbox_StaticId>("/Scenarios/Postback/Textbox_StaticId.aspx"); var EXPECTED = "Configured Text"; // Act sut.SetPageState <TextBox>("TestTextboxControl", tb => { tb.Text = EXPECTED; }); // Assert var thisTb = sut.FindControl("TestTextboxControl") as TextBox; Assert.Equal(EXPECTED, thisTb.Text); }
public void TextboxAddedToControlSet() { // Arrange // Act var sut = WebApplicationProxy.GetPageByLocation <Textbox_StaticId>("/Scenarios/Postback/Textbox_StaticId.aspx"); sut.FireEvent(WebFormEvent.Init, EventArgs.Empty); // Assert Assert.NotEqual(0, sut.Controls.Count); Assert.NotNull(sut.FindControl("TestTextboxControl")); TextBox tb = sut.FindControl("TestTextboxControl") as TextBox; output.WriteLine("Textbox found with text: " + tb.Text); Assert.Equal("Initial Text", tb.Text); }
public void AllEventsInOrder() { // Arrange base.context.SetupGet(c => c.IsDebuggingEnabled).Returns(true); // Act var sut = WebApplicationProxy.GetPageByLocation <Web.Scenarios.RunToEvent.VerifyOrder>("/Scenarios/RunToEvent/VerifyOrder.aspx"); sut.RunToEvent(); // Assert Assert.Equal(4, sut.EventList.Count); for (int i = 1; i <= 4; i++) { Assert.Equal(i.ToString(), sut.EventList[i].Substring(0, 1)); } }
public void FireTriggersCommandEvent() { // Arrange var page = WebApplicationProxy.GetPageByLocation <Buttons_AutoId>("/Scenarios/ControlTree/Buttons_AutoId.aspx"); // Run to PreRender, the buttons are in a FormView that is databound in Load page.RunToEvent(WebFormEvent.PreRender); // Act var sut = page.ButtonA; const string TEST_CAPTION = "This is a test"; var args = new CommandEventArgs("Caption", TEST_CAPTION); sut.FireEvent("Command", args); // Assert Assert.Equal(TEST_CAPTION, sut.Text); }
public void FriendlyUrlIsHandled() { // Arrange var expectedType = typeof(WebFormsTest.Web.Scenarios.Postback.Textbox_StaticId); // Act // Get the default page var locatedType = WebApplicationProxy.GetPageByLocation("/Scenarios/Postback/Textbox_StaticId").GetType(); _testHelper.WriteLine("Type returned: " + locatedType.BaseType.FullName); // NOTE: This needs to look at the BaseType of the type returned from the GetPageByLocation // because this is the JIT'd page which is merged with the ASPX and inherits from the type // defined in the code-behind // Assert Assert.Equal(expectedType.FullName, locatedType.BaseType.FullName); }
public void SimpleSelect() { // Arrange var expectedItems = WebFormsTest.Web.Scenarios.ModelBinding.Simple.SampleItems; // Act var sut = WebApplicationProxy.GetPageByLocation <Web.Scenarios.ModelBinding.Simple>("/Scenarios/ModelBinding/Simple.aspx"); sut.RunToEvent(WebFormEvent.PreRender); // Need to execute all events var outHTML = sut.RenderHtml(); _testHelper.WriteLine(outHTML); // Assert foreach (var item in expectedItems) { Assert.True(CanLocateTableWithCellContents(outHTML, "myGrid", item.ID.ToString())); Assert.True(CanLocateTableWithCellContents(outHTML, "myGrid", item.Name)); } }
private static void AddMasterPage(Page myPage) { if (string.IsNullOrEmpty(myPage.MasterPageFile)) { return; } var master = WebApplicationProxy.GetPageByLocation(myPage.MasterPageFile) as MasterPage; var masterField = typeof(Page).GetField("_master", BindingFlags.Instance | BindingFlags.NonPublic); masterField.SetValue(myPage, master); // Initialize the rest of the junk on page for the Master if (myPage.HasControls()) { myPage.Controls.Clear(); } var contentTemplates = ((Page)myPage).get_ContentTemplateCollection(); master.SetContentTemplates(contentTemplates); master.SetOwnerControl((Page)myPage); master.InitializeAsUserControl(myPage.Page); myPage.Controls.Add(master); }
public void CanIgetMasterPage() { var sut = WebApplicationProxy.GetPageByLocation("/Site.Master") as SiteMaster; Assert.NotNull(sut); }
public void DefaultPage_TestPersonDataPopulation() { var mockPerson = new Data.Entity.Person { Id = 5, FirstName = "Joe", LastName = "Brown", DateOfBirth = new DateTime(1980, 5, 1) }; var yearProvider = new Mock <IYearProvider>(); var personRepo = new Mock <IPersonRepository>(); personRepo.Setup(d => d.GetPerson(It.IsAny <int>())).Returns(mockPerson); var collection = new ServiceCollection(); collection.AddScoped((sp) => { return(personRepo.Object); }); collection.AddScoped((sp) => { return(yearProvider.Object); }); var provider = new Services.ServiceProvider(collection.BuildServiceProvider()); WebApplicationProxy.Create(typeof(_Default), provider); var page = WebApplicationProxy.GetPageByLocation <_Default>("/default.aspx"); page.RunToEvent(WebFormEvent.PreRender); var submitButton = page.FindControlRecursive <Button>("submitButton"); var postData = new NameValueCollection(); postData.Add("ctl00$MainContent$txtId", mockPerson.Id.ToString()); page.MockPostData(postData); submitButton.FireEvent("Click", null); personRepo.Verify(x => x.GetPerson(It.Is <int>((val) => val == 5)), Times.Once()); var employeeData = page.FindControlRecursive <HtmlGenericControl>("employeeData"); Assert.IsTrue(employeeData.Visible, "Expected employeeData control to be visible"); var LabelId = page.FindControlRecursive <Label>("LabelId"); Assert.AreEqual <string>(LabelId.Text, mockPerson.Id.ToString()); var LabelFirstName = page.FindControlRecursive <Label>("LabelFirstName"); Assert.AreEqual <string>(LabelFirstName.Text, mockPerson.FirstName); var LabelLastName = page.FindControlRecursive <Label>("LabelLastName"); Assert.AreEqual <string>(LabelLastName.Text, mockPerson.LastName); var LabelDob = page.FindControlRecursive <Label>("LabelDob"); Assert.AreEqual <string>(LabelDob.Text, mockPerson.DateOfBirth.ToShortDateString()); //sut.sub var outHTML = page.RenderHtml(); }