protected override void Because() { base.Because(); var clientTestRunConfiguration = base.CreateTestDefaultClinetTestRunConfiguraiton(); _statLightConfiguration = new StatLightConfiguration(clientTestRunConfiguration, MockServerTestRunConfiguration); }
protected override void Because() { base.Because(); var clientTestRunConfiguration = base.CreateTestDefaultClinetTestRunConfiguraiton(); _statLightConfiguration = new StatLightConfiguration(clientTestRunConfiguration, MockServerTestRunConfiguration); var fakeCurrentStatLightConfiguration = new CurrentStatLightConfiguration(_statLightConfiguration); container.Register<ICurrentStatLightConfiguration>(fakeCurrentStatLightConfiguration); }
public IRunner CreateOnetimeConsoleRunner(StatLightConfiguration statLightConfiguration) { if (statLightConfiguration == null) throw new ArgumentNullException("statLightConfiguration"); IWebServer webServer; IEnumerable<IWebBrowser> webBrowsers; IDialogMonitorRunner dialogMonitorRunner; BuildAndReturnWebServiceAndBrowser( _logger, out webServer, out webBrowsers, out dialogMonitorRunner); CreateAndAddConsoleResultHandlerToEventAggregator(); IRunner runner = new OnetimeRunner(_logger, _eventSubscriptionManager, _eventPublisher, webServer, webBrowsers, statLightConfiguration.Server.XapToTestPath, dialogMonitorRunner); return runner; }
public IRunner CreateContinuousTestRunner(StatLightConfiguration statLightConfiguration) { if (statLightConfiguration == null) throw new ArgumentNullException("statLightConfiguration"); IWebServer webServer; List<IWebBrowser> webBrowsers; IDialogMonitorRunner dialogMonitorRunner; BuildAndReturnWebServiceAndBrowser( _logger, statLightConfiguration, out webServer, out webBrowsers, out dialogMonitorRunner); CreateAndAddConsoleResultHandlerToEventAggregator(_logger); IRunner runner = new ContinuousConsoleRunner(_logger, _eventSubscriptionManager, _eventPublisher, statLightConfiguration.Server.XapToTestPath, statLightConfiguration.Client, webServer, webBrowsers.First()); return runner; }
protected override void Before_all_tests() { base.Before_all_tests(); var mockCurrentStatLightConfiguration = new Mock<ICurrentStatLightConfiguration>(); var statlightConfiguration = new StatLightConfiguration( new ClientTestRunConfiguration( unitTestProviderType: UnitTestProviderType.MSTest, methodsToTest: new List<string>(), tagFilters: string.Empty, numberOfBrowserHosts: 1, webBrowserType: WebBrowserType.SelfHosted, entryPointAssembly: string.Empty, windowGeometry: new WindowGeometry(), testAssemblyFormalNames: new List<string>() ), new ServerTestRunConfiguration(xapHost: () => new byte[0], xapToTest: string.Empty, xapHostType: XapHostType.MSTest2008December, queryString: string.Empty, forceBrowserStart: true, windowGeometry: new WindowGeometry(), isPhoneRun: false ) ); mockCurrentStatLightConfiguration.Setup(s => s.Current).Returns(statlightConfiguration); var responseFactory = new ResponseFactory(mockCurrentStatLightConfiguration.Object); PostHandler = new PostHandler(TestLogger, TestEventPublisher, mockCurrentStatLightConfiguration.Object, responseFactory); }
public IRunner CreateRemotelyHostedRunner(StatLightConfiguration statLightConfiguration) { // if (statLightConfiguration == null) throw new ArgumentNullException("statLightConfiguration"); //ClientTestRunConfiguration clientTestRunConfiguration = statLightConfiguration.Client; //ServerTestRunConfiguration serverTestRunConfiguration = statLightConfiguration.Server; throw new NotImplementedException(); // //var urlToTestPage = statLightConfiguration.Client.XapToTestUrl.ToUri(); // //var location = new RemoteSiteOverriddenLocation(logger, urlToTestPage); // //var debugAssertMonitorTimer = new TimerWrapper(serverTestRunConfiguration.DialogSmackDownElapseMilliseconds); // //SetupDebugClientEventListener(logger); // //var webServer = CreateWebServer(logger, statLightConfiguration, location); // // // //var showTestingBrowserHost = serverTestRunConfiguration.ShowTestingBrowserHost; // // // //var querystring = "?{0}={1}".FormatWith(StatLightServiceRestApi.StatLightResultPostbackUrl, // // HttpUtility.UrlEncode(location.BaseUrl.ToString())); // //var testPageUrlAndPostbackQuerystring = new Uri(location.TestPageUrl + querystring); // //logger.Debug("testPageUrlAndPostbackQuerystring={0}".FormatWith(testPageUrlAndPostbackQuerystring.ToString())); // //var webBrowsers = GetWebBrowsers(logger, testPageUrlAndPostbackQuerystring, clientTestRunConfiguration, showTestingBrowserHost, serverTestRunConfiguration.QueryString, statLightConfiguration.Server.ForceBrowserStart); // // // //var dialogMonitorRunner = SetupDialogMonitorRunner(logger, webBrowsers, debugAssertMonitorTimer); // // // //StartupBrowserCommunicationTimeoutMonitor(); // //CreateAndAddConsoleResultHandlerToEventAggregator(logger); // // // //IRunner runner = new OnetimeRunner(logger, _eventSubscriptionManager, _eventPublisher, webServer, webBrowsers, statLightConfiguration.Server.XapToTestPath, dialogMonitorRunner); // //return runner; }
public IRunner CreateWebServerOnlyRunner(StatLightConfiguration statLightConfiguration) { if (statLightConfiguration == null) throw new ArgumentNullException("statLightConfiguration"); var location = new WebServerLocation(_logger); var webServer = _ioc.Resolve<InMemoryWebServer>(); CreateAndAddConsoleResultHandlerToEventAggregator(); IRunner runner = new WebServerOnlyRunner(_logger, _eventSubscriptionManager, _eventPublisher, webServer, location.TestPageUrl, statLightConfiguration.Server.XapToTestPath); return runner; }
public IRunner CreateTeamCityRunner(StatLightConfiguration statLightConfiguration) { if (statLightConfiguration == null) throw new ArgumentNullException("statLightConfiguration"); ILogger logger = new NullLogger(); IWebServer webServer; IEnumerable<IWebBrowser> webBrowsers; IDialogMonitorRunner dialogMonitorRunner; BuildAndReturnWebServiceAndBrowser( logger, out webServer, out webBrowsers, out dialogMonitorRunner); var teamCityTestResultHandler = new TeamCityTestResultHandler(new ConsoleCommandWriter(), statLightConfiguration.Server.XapToTestPath); IRunner runner = new TeamCityRunner(logger, _eventSubscriptionManager, _eventPublisher, webServer, webBrowsers.ToList(), teamCityTestResultHandler, statLightConfiguration.Server.XapToTestPath, dialogMonitorRunner); return runner; }
private static IRunner CreateStatLightRunner(StatLightConfiguration config, ILogger logger, EventAggregator eventAggregator) { var runnerFactory = new StatLightRunnerFactory(logger, eventAggregator, eventAggregator); return runnerFactory.CreateOnetimeConsoleRunner(config); }
private IWebServer CreateWebServer(ILogger logger, StatLightConfiguration statLightConfiguration, WebServerLocation webServerLocation) { var responseFactory = new ResponseFactory(statLightConfiguration.Server.HostXap, statLightConfiguration.Client); var postHandler = new PostHandler(logger, _eventPublisher, statLightConfiguration.Client, responseFactory); return new InMemoryWebServer(logger, webServerLocation, responseFactory, postHandler); }
private void BuildAndReturnWebServiceAndBrowser( ILogger logger, StatLightConfiguration statLightConfiguration, out IWebServer webServer, out List<IWebBrowser> webBrowsers, out IDialogMonitorRunner dialogMonitorRunner) { ClientTestRunConfiguration clientTestRunConfiguration = statLightConfiguration.Client; ServerTestRunConfiguration serverTestRunConfiguration = statLightConfiguration.Server; var location = new WebServerLocation(logger); var debugAssertMonitorTimer = new TimerWrapper(serverTestRunConfiguration.DialogSmackDownElapseMilliseconds); webServer = CreateWebServer(logger, statLightConfiguration, location); webBrowsers = GetWebBrowsers(logger, location.TestPageUrl, clientTestRunConfiguration, serverTestRunConfiguration.ShowTestingBrowserHost, serverTestRunConfiguration.QueryString, statLightConfiguration.Server.ForceBrowserStart); dialogMonitorRunner = SetupDialogMonitorRunner(logger, webBrowsers, debugAssertMonitorTimer); StartupBrowserCommunicationTimeoutMonitor(); }
private TestReport DoTheRun(RunnerType runnerType, StatLightConfiguration statLightConfiguration) { using (IRunner runner = GetRunner( _logger, runnerType, statLightConfiguration, _statLightRunnerFactory)) { _logger.Debug("IRunner typeof({0})".FormatWith(runner.GetType().Name)); return _runnerFunc(runner); } }
private static IRunner GetRunner(ILogger logger, RunnerType runnerType, StatLightConfiguration statLightConfiguration, IStatLightRunnerFactory statLightRunnerFactory) { switch (runnerType) { case RunnerType.TeamCity: logger.LogChatterLevel = LogChatterLevels.None; return statLightRunnerFactory.CreateTeamCityRunner(statLightConfiguration); case RunnerType.ContinuousTest: return statLightRunnerFactory.CreateContinuousTestRunner(statLightConfiguration); case RunnerType.WebServerOnly: return statLightRunnerFactory.CreateWebServerOnlyRunner(statLightConfiguration); case RunnerType.RemoteRun: return statLightRunnerFactory.CreateRemotelyHostedRunner(statLightConfiguration); default: return statLightRunnerFactory.CreateOnetimeConsoleRunner(statLightConfiguration); } }
protected override void Before_all_tests() { base.Before_all_tests(); var webServerLocation = new WebServerLocation(TestLogger, 38881); var consoleLogger = new ConsoleLogger(LogChatterLevels.Full); _hostXap = new byte[] { 5, 4, 2, 1, 4 }; var clientConfig = new ClientTestRunConfiguration(UnitTestProviderType.MSTest, new List<string>(), "", 1, WebBrowserType.SelfHosted, string.Empty, new WindowGeometry(), new List<string>()); _serializedConfiguration = clientConfig.Serialize(); var dummyServerTestRunConfiguration = GetDummyServerTestRunConfiguration(); var statLightConfiguration = new StatLightConfiguration(clientConfig, dummyServerTestRunConfiguration); var currentStatLightConfiguration = new CurrentStatLightConfiguration(statLightConfiguration); _responseFactory = new ResponseFactory(currentStatLightConfiguration); _mockPostHandler = new Mock<IPostHandler>(); _inMemoryWebServer = new InMemoryWebServer(consoleLogger, webServerLocation, _responseFactory, _mockPostHandler.Object, base.TestEventPublisher); _webClient = new WebClient(); _baseUrl = webServerLocation.BaseUrl.ToString(); _inMemoryWebServer.Start(); }