public OfflineApiPortService(IApiCatalogLookup lookup, IRequestAnalyzer requestAnalyzer, ITargetMapper mapper, ICollection <IReportWriter> reportWriters, ITargetNameParser targetNameParser, IApiRecommendations apiRecommendations) { _lookup = lookup; _requestAnalyzer = requestAnalyzer; _mapper = mapper; _reportWriters = reportWriters; _defaultTargets = new HashSet <FrameworkName>(targetNameParser.DefaultTargets); _searcher = new StringContainsSearcher(lookup); _apiRecommendations = apiRecommendations; }
public ApiInformation(string docId, IApiCatalogLookup catalog, IApiRecommendations recommendations) { if (string.IsNullOrWhiteSpace(docId)) { throw new ArgumentNullException(nameof(docId)); } Definition = catalog.GetApiDefinition(docId); Supported = catalog.GetSupportedVersions(docId); AdditionalInformation = recommendations.GetNotes(docId); SourceCompatibleChanges = recommendations.GetSourceCompatibleChanges(docId); RecommendedChanges = recommendations.GetRecommendedChanges(docId); Component = recommendations.GetComponent(docId); }
public ApiInformation(string docId, IApiCatalogLookup catalog, IApiRecommendations recommendations) { if (string.IsNullOrWhiteSpace(docId)) { throw new ArgumentNullException("docId"); } Definition = catalog.GetApiDefinition(docId); Supported = catalog.GetSupportedVersions(docId); AdditionalInformation = recommendations.GetNotes(docId); SourceCompatibleChanges = recommendations.GetSourceCompatibleChanges(docId); RecommendedChanges = recommendations.GetRecommendedChanges(docId); Component = recommendations.GetComponent(docId); }
private static void TestBreakingChange(Version version, IApiRecommendations recommendations, bool noBreakingChangesExpected, IEnumerable <AssemblyInfo> assembliesToIgnore, IEnumerable <string> breakingChangesToSuppress) { var catalog = Substitute.For <IApiCatalogLookup>(); var testData = GenerateTestData(catalog); var engine = new AnalysisEngine(catalog, recommendations); var framework = new FrameworkName(AnalysisEngine.FullFrameworkIdentifier + ",Version=" + version); var breakingChanges = engine.FindBreakingChanges(new[] { framework }, testData, assembliesToIgnore, breakingChangesToSuppress, Array.Empty <string>()).ToList(); if (noBreakingChangesExpected) { Assert.Empty(breakingChanges); } else { Assert.Equal(1, breakingChanges.Count); Assert.Equal("5", breakingChanges.First().Break.Id); } }
public AnalysisEngine(IApiCatalogLookup catalog, IApiRecommendations recommendations, IPackageFinder packageFinder) { _catalog = catalog; _recommendations = recommendations; _packageFinder = packageFinder; }
public UsageData(string docId, IApiCatalogLookup catalog, IApiRecommendations recommendations) { Api = new ApiInformation(docId, catalog, recommendations); }
public AnalysisEngine(IApiCatalogLookup catalog, IApiRecommendations recommendations) { _catalog = catalog; _recommendations = recommendations; }
private static void TestBreakingChange(Version version, IApiRecommendations recommendations, bool noBreakingChangesExpected, IEnumerable<AssemblyInfo> assembliesToIgnore, IEnumerable<string> breakingChangesToSuppress) { var catalog = Substitute.For<IApiCatalogLookup>(); var testData = GenerateTestData(catalog); var engine = new AnalysisEngine(catalog, recommendations); var framework = new FrameworkName(AnalysisEngine.FullFrameworkIdentifier + ",Version=" + version); var breakingChanges = engine.FindBreakingChanges(new[] { framework }, testData, assembliesToIgnore, breakingChangesToSuppress, Array.Empty<string>()).ToList(); if (noBreakingChangesExpected) { Assert.Empty(breakingChanges); } else { Assert.Equal(1, breakingChanges.Count); Assert.Equal("5", breakingChanges.First().Break.Id); } }