public void GetCurrentDataContext_Throws_InvalidOperationException_If_No_DataContextBuilder_Specified() { // Arrange HttpContextDataContextManager manager = new HttpContextDataContextManager(); HttpContextBase context = Mockery.CreateMockHttpContext(); manager.HttpContextSource = () => context; // Act and Assert ExceptionAssert.Throws<InvalidOperationException>(() => manager.GetCurrentDataContext(), TargetResources.Error_NoDataContextBuilder); }
public void GetCurrentDataContext_Constructs_New_Context_And_Stores_In_HttpContext_If_No_Current_Context() { // Arrange HttpContextDataContextManager manager = new HttpContextDataContextManager(); HttpContextBase context = Mockery.CreateMockHttpContext(); manager.HttpContextSource = () => context; DataContext expectedDataContext = new Mock<DataContext>().Object; var mockDataContextBuilder = new Mock<DataContextBuilder>(); mockDataContextBuilder.Setup(b => b.CreateDataContext()).Returns(expectedDataContext); manager.DataContextBuilder = mockDataContextBuilder.Object; // Act DataContext actualDataContext = manager.GetCurrentDataContext(); // Assert Assert.AreSame(expectedDataContext, actualDataContext); Assert.AreSame(actualDataContext, context.Items[HttpContextDataContextManager.ContextKey]); }
public void GetCurrentDataContext_Returns_DataContext_In_HttpContext_If_Present() { // Arrange HttpContextDataContextManager manager = new HttpContextDataContextManager(); HttpContextBase context = Mockery.CreateMockHttpContext(); manager.HttpContextSource = () => context; DataContext expectedDataContext = new Mock<DataContext>().Object; context.Items[HttpContextDataContextManager.ContextKey] = expectedDataContext; var mockDataContextBuilder = new Mock<DataContextBuilder>(); mockDataContextBuilder.Never(b => b.CreateDataContext()); manager.DataContextBuilder = mockDataContextBuilder.Object; // Act DataContext actualDataContext = manager.GetCurrentDataContext(); // Assert Assert.AreSame(expectedDataContext, actualDataContext); }
public void GetCurrentDataContext_Throws_InvalidOperationException_If_No_HttpContextSource_Specified() { // Arrange HttpContextDataContextManager manager = new HttpContextDataContextManager(); // Act and Assert ExceptionAssert.Throws<InvalidOperationException>(() => manager.GetCurrentDataContext(), TargetResources.Error_NoHttpContextSource); }