コード例 #1
0
        private List <PackageIdentity> GetPackages()
        {
            var packages = new List <PackageIdentity>();

            // Include all package references that aren't ourselves.
            foreach (var packageReference in PackageReferences)
            {
                var include = packageReference.GetMetadata("PackageName");

                if (ExclusionPackageReferenceSet.Contains(include))
                {
                    continue;
                }

                if (!VersionRange.TryParse(packageReference.GetMetadata("Version"), out var nuGetVersion))
                {
                    this.Log().Error($"Package {include} does not have a valid Version.");
                    continue;
                }

                var libraryRange    = new LibraryRange(include, nuGetVersion, LibraryDependencyTarget.Package);
                var packageIdentity = NuGetPackageHelper.GetBestMatch(libraryRange).GetAwaiter().GetResult();
                packages.Add(packageIdentity);
            }

            return(packages);
        }
コード例 #2
0
        public static async Task CheckResultsAgainstTemplate(LibraryRange[] package, IReadOnlyList <NuGetFramework> frameworks, [CallerFilePath] string filePath = null, [CallerMemberName] string memberName = null)
        {
            var sourceRepository = new SourceRepository(new PackageSource(NuGetPackageHelper.DefaultNuGetSource), NuGetPackageHelper.Providers);
            var findResource     = await sourceRepository.GetResourceAsync <FindPackageByIdResource>().ConfigureAwait(false);

            var bestPackageIdentity = await NuGetPackageHelper.GetBestMatch(package[0], findResource, CancellationToken.None).ConfigureAwait(false);

            using (var memoryStream = new MemoryStream())
            {
                using (var streamWriter = new StreamWriter(memoryStream, Encoding.UTF8, 1024, true))
                {
                    await ObservablesForEventGenerator.ExtractEventsFromNuGetPackages(streamWriter, package, frameworks, TestUtilities.GetPackageDirectory(memberName, filePath)).ConfigureAwait(false);
                }

                CheckPackageIdentityContents(memoryStream, bestPackageIdentity, frameworks[0], filePath);
            }
        }