public void GetOrAddCacheEntry_VariesByModelType_IfPageIsModelTypeProvider() { // Arrange var activator = CreateActivator(); var page = new ModelTypeProviderRazorPage(); // Act - 1 var result1 = activator.GetOrAddCacheEntry(page); var result2 = activator.GetOrAddCacheEntry(page); // Assert - 1 Assert.Same(result1, result2); // Act - 2 page.ModelType = typeof(string); var result3 = activator.GetOrAddCacheEntry(page); var result4 = activator.GetOrAddCacheEntry(page); // Assert - 2 Assert.Same(result3, result4); Assert.NotSame(result1, result3); }
public void Activate_UsesModelFromModelTypeProvider() { // Arrange var activator = CreateActivator(); var viewData = new ViewDataDictionary <object>(MetadataProvider, new ModelStateDictionary()) { { "key", "value" }, }; var viewContext = CreateViewContext(viewData); var page = new ModelTypeProviderRazorPage(); // Act activator.Activate(page, viewContext); // Assert Assert.Same(viewContext.ViewData, page.ViewData); Assert.NotSame(viewData, viewContext.ViewData); Assert.IsType <ViewDataDictionary <Guid> >(viewContext.ViewData); Assert.Equal("value", viewContext.ViewData["key"]); }