public AbstractTestRunImportResultsReader GetResolver(TestRunImportSettings settings, TextReader reader) { if (settings == null) { _log.Error("GetResolver member settings is null"); throw new ArgumentNullException("settings"); } switch (settings.FrameworkType) { case FrameworkTypes.FrameworkTypes.NUnit: return(new NUnitResultsXmlReader(_log, reader)); case FrameworkTypes.FrameworkTypes.JUnit: return(new JUnitResultsXmlReader(_log, reader)); case FrameworkTypes.FrameworkTypes.Selenium: return(new SeleniumResultsHtmlReader(_log, reader)); case FrameworkTypes.FrameworkTypes.JenkinsHudson: return(new JenkinsHudsonResultsXmlReader(_log, reader)); default: throw new ApplicationException(string.Format("Failed to get resolver for FrameworkType: {0}", settings.FrameworkType)); } }
protected internal SimpleTestCaseResolver(IActivityLogger log, TestRunImportSettings settings, IEnumerable <TestRunImportResultInfo> resultInfos, IEnumerable <TestCaseTestPlanDTO> testCaseTestPlans) : base(log, settings, resultInfos, testCaseTestPlans) { }
protected AbstractTestCaseResolver(IActivityLogger log, TestRunImportSettings settings, IEnumerable <TestRunImportResultInfo> resultInfos, IEnumerable <TestCaseTestPlanDTO> testCaseTestPlans) { if (log == null) { throw new ArgumentNullException("log"); } _log = log; if (settings == null) { _log.Error("Ctor member TestRunImportSettings settings is null"); throw new ArgumentNullException("settings"); } if (testCaseTestPlans == null) { _log.Error("Ctor member IEnumerable<TestCaseTestPlanDTO> testCaseTestPlans is null"); throw new ArgumentNullException("testCaseTestPlans"); } TestCaseTestPlans = testCaseTestPlans; if (resultInfos == null) { _log.Error("Ctor member IEnumerable<TestRunImportResultInfo> resultInfos is null"); throw new ArgumentNullException("resultInfos"); } ResultInfos = resultInfos; }
protected internal RegExpTestCaseResolver(IActivityLogger log, TestRunImportSettings settings, IEnumerable <TestRunImportResultInfo> resultInfos, IEnumerable <TestCaseTestPlanDTO> testCaseTestPlans ) : base(log, settings, resultInfos, testCaseTestPlans) { if (settings.RegExp != null) { _rx = new Regex(settings.RegExp, RegexOptions.Compiled | RegexOptions.IgnoreCase); } }
private string GetJenkinsHudsonLastCompletedBuildNumber(TestRunImportSettings profile) { if (profile.FrameworkType != FrameworkTypes.FrameworkTypes.JenkinsHudson) return null; try { var request = WebRequest.Create(new Uri(string.Format("{0}/lastCompletedBuild/buildNumber", profile.ResultsFilePath.TrimEnd(new[] { '/', '\\' })))); if (!(request is HttpWebRequest)) return null; request.CachePolicy = new RequestCachePolicy(RequestCacheLevel.BypassCache); using (var response = (HttpWebResponse)request.GetResponse()) { if (response.StatusCode != HttpStatusCode.OK) return null; var responseStream = response.GetResponseStream(); if (responseStream == null) return null; using (var reader = new StreamReader(responseStream)) { return reader.ReadToEnd().Trim(); } } } catch (UriFormatException ex) { _log.ErrorFormat("Specified path has invalid format: {0}", ex.Message); throw new ApplicationException(string.Format("Specified path has invalid format: {0}", ex.Message), ex); } catch (NotSupportedException ex) { _log.ErrorFormat(string.Format("Specified path has invalid format: {0}", ex.Message), ex); throw new ApplicationException( string.Format("The request scheme specified in requestUri is not registered: {0}", ex.Message), ex); } catch (SecurityException ex) { _log.ErrorFormat( "The caller does not have permission to connect to the requested URI or a URI that the request is redirected to: {0}", ex.Message); throw new ApplicationException( string.Format( "The caller does not have permission to connect to the requested URI or a URI that the request is redirected to: {0}", ex.Message), ex); } }
public AbstractTestCaseResolver GetResolver(TestRunImportSettings settings, IEnumerable <TestRunImportResultInfo> resultInfos, IEnumerable <TestCaseTestPlanDTO> testCaseTestPlans) { return(string.IsNullOrEmpty(settings.RegExp) ? new SimpleTestCaseResolver(_log, settings, resultInfos, testCaseTestPlans) : new RegExpTestCaseResolver(_log, settings, resultInfos, testCaseTestPlans)); }