public void OnPageExecuting_SetsPropertyValue() { // Arrange var httpContext = new DefaultHttpContext(); var tempData = new TempDataDictionary(httpContext, Mock.Of <ITempDataProvider>()) { { "TempDataProperty-Test", "Value" } }; var pageModel = new TestPageModel(); var filter = CreatePageSaveTempDataPropertyFilter(tempData, "TempDataProperty-"); filter.Subject = pageModel; var context = new PageHandlerExecutingContext( new PageContext() { ActionDescriptor = new CompiledPageActionDescriptor(), HttpContext = httpContext, RouteData = new RouteData(), }, Array.Empty <IFilterMetadata>(), null, new Dictionary <string, object>(), pageModel); // Act filter.OnPageHandlerExecuting(context); // Assert Assert.Equal("Value", pageModel.Test); Assert.Null(pageModel.Test2); }
public void OnTempDataSaving_PopulatesTempDataWithNewValuesFromPageProperties() { // Arrange var httpContext = new DefaultHttpContext(); var tempData = new TempDataDictionary(httpContext, Mock.Of <ITempDataProvider>()) { ["TempDataProperty-Test"] = "Old-Value", }; var pageModel = new TestPageModel() { Test = "TestString", Test2 = "Test2", }; var filter = CreatePageSaveTempDataPropertyFilter(tempData, "TempDataProperty-"); filter.Subject = pageModel; // Act filter.OnTempDataSaving(tempData); // Assert Assert.Equal("TestString", tempData["TempDataProperty-Test"]); Assert.False(tempData.ContainsKey("TestDataProperty-Test2")); }
public void OnTempDataSaving_WritesToTempData_WithoutPrefix() { // Arrange var httpContext = new DefaultHttpContext(); var tempData = new TempDataDictionary(httpContext, Mock.Of <ITempDataProvider>()) { ["Test"] = "Old-Value", }; var pageModel = new TestPageModel { Test = "New-Value", }; var filter = CreatePageSaveTempDataPropertyFilter(tempData, string.Empty); filter.Subject = pageModel; // Act filter.OnTempDataSaving(tempData); // Assert Assert.Collection( tempData, item => { Assert.Equal("Test", item.Key); Assert.Equal("New-Value", item.Value); }); }
public App() { InitializeComponent(); var viewModel = new TestPageModel(); MainPage = new TestPage() { ViewModel = viewModel }; }
public void OnPageExecuting_InitializesAndSavesProperties() { // Arrange var httpContext = new DefaultHttpContext(); var tempData = new TempDataDictionary(httpContext, Mock.Of <ITempDataProvider>()) { { "TempDataProperty-Test", "Value" } }; tempData.Save(); var pageModel = new TestPageModel(); var filter = CreatePageSaveTempDataPropertyFilter(tempData); filter.Subject = pageModel; var factory = filter.FilterFactory; var pageType = typeof(TestPageModel); var testProperty = pageType.GetProperty(nameof(TestPageModel.Test)); var test2Property = pageType.GetProperty(nameof(TestPageModel.Test2)); filter.Properties = new List <TempDataProperty> { new TempDataProperty("TempDataProperty-Test", testProperty, testProperty.GetValue, testProperty.SetValue), new TempDataProperty("TempDataProperty-Test2", test2Property, test2Property.GetValue, test2Property.SetValue) }; var context = new PageHandlerExecutingContext( new PageContext() { ActionDescriptor = new CompiledPageActionDescriptor(), HttpContext = httpContext, RouteData = new RouteData(), }, Array.Empty <IFilterMetadata>(), null, new Dictionary <string, object>(), pageModel); // Act filter.OnPageHandlerExecuting(context); // Assert Assert.Collection( filter.Properties.OrderBy(p => p.PropertyInfo.Name), p => Assert.Equal(testProperty, p.PropertyInfo), p => Assert.Equal(test2Property, p.PropertyInfo)); Assert.Same(filter.Properties, factory.Properties); }
public ActionResult IncrementCounts() { TestPageModel mdl = this.GetModel(); return(Content( string.Format( "{{ \"count\": {0}, \"safeCount\": {1}, \"listCount\": {2} }}", mdl.Count, mdl.SafeCount, mdl.ListCount), "application/json")); }
public TestViewModel() { TestModel = new TestPageModel(); _database = new DatabaseService(); _selectionChanged = new SelectionChanged(); Vocables = GetVocables(SelectViewModel.SelectedModulIDs); TestModel.Modul_Names = new ObservableCollection <string>(); Title = "Click play to start a test!"; SelectedIDs = SelectViewModel.SelectedModulIDs; SelectedMode = new SelectedMode(); SelectionChanged.SelecedIDsChanged += RefreshSelection; }
private TestPageModel GetModel() { this.Session["count"] = (int)this.Session["count"] + 1; SafelyIncrementableIntHolder safeInt = this.Session["safeCount"] as SafelyIncrementableIntHolder; int safeResult = safeInt.Increment(); LockedList sessList = this.Session["listCount"] as LockedList; sessList.Add(0); TestPageModel mdl = new TestPageModel { Count = (int)this.Session["count"], SafeCount = safeResult, ListCount = sessList.Count }; return(mdl); }