public MaintenanceRedirectionChecker(IFileExtensionChecker extensionChecker, IExternalUrlChecker urlChecker, IApplicationInstanceContext context) { _extensionChecker = extensionChecker; _urlChecker = urlChecker; _context = context; }
public MaintenanceRedirectionChecker(IFileExtensionChecker extensionChecker, IExternalUrlChecker urlChecker, IApplicationInstanceContext context) { _extensionChecker = extensionChecker; _urlChecker = urlChecker; _context = context; }
private void performTest(bool isRedirectableExtension, bool isExternalUrl, bool isDownForMaintenance, bool shouldBeRedirected) { ApplicationInstance instance = new ApplicationInstance(); instance.DownForMaintenance = isDownForMaintenance; MockRepository mocks = new MockRepository(); IFileExtensionChecker extensionChecker = mocks.CreateMock <IFileExtensionChecker>(); IExternalUrlChecker urlChecker = mocks.CreateMock <IExternalUrlChecker>(); IApplicationInstanceContext context = mocks.CreateMock <IApplicationInstanceContext>(); using (mocks.Record()) { Expect.Call(extensionChecker.CurrentUrlCanBeRedirected()).Return(isRedirectableExtension); Expect.Call(urlChecker.CurrentUrlIsExternal()).Return(isExternalUrl); Expect.Call(context.GetCurrent()).Return(instance); } using (mocks.Playback()) { IMaintenanceRedirectionChecker checker = new MaintenanceRedirectionChecker(extensionChecker, urlChecker, context); Assert.That(checker.ShouldBeRedirectedToMaintenancePage(), Is.EqualTo(shouldBeRedirected)); } }