public void PackageOverridesContainsCorrectEntries() { if (!_isTargetingPackBuilding) { return; } var packageOverridePath = Path.Combine(_targetingPackRoot, "data", "PackageOverrides.txt"); AssertEx.FileExists(packageOverridePath); var packageOverrideFileLines = File.ReadAllLines(packageOverridePath); var runtimeDependencies = TestData.GetRuntimeTargetingPackDependencies() .Split(';', StringSplitOptions.RemoveEmptyEntries) .ToHashSet(); var aspnetcoreDependencies = TestData.GetAspNetCoreTargetingPackDependencies() .Split(';', StringSplitOptions.RemoveEmptyEntries) .ToHashSet(); Assert.Equal(packageOverrideFileLines.Length, runtimeDependencies.Count + aspnetcoreDependencies.Count); foreach (var entry in packageOverrideFileLines) { var packageOverrideParts = entry.Split("|"); var packageName = packageOverrideParts[0]; var packageVersion = packageOverrideParts[1]; if (runtimeDependencies.Contains(packageName)) { Assert.Equal(TestData.GetMicrosoftNETCoreAppPackageVersion(), packageVersion); } else if (aspnetcoreDependencies.Contains(packageName)) { Assert.Equal(TestData.GetReferencePackSharedFxVersion(), packageVersion); } else { Assert.True(false, $"{packageName} is not a recognized aspNetCore or runtime dependency"); } } }
public void PackageOverridesContainsCorrectEntries() { if (!_isTargetingPackBuilding) { return; } var packageOverridePath = Path.Combine(_targetingPackRoot, "data", "PackageOverrides.txt"); AssertEx.FileExists(packageOverridePath); var packageOverrideFileLines = File.ReadAllLines(packageOverridePath); var runtimeDependencies = TestData.GetRuntimeTargetingPackDependencies() .Split(';', StringSplitOptions.RemoveEmptyEntries) .ToHashSet(); var aspnetcoreDependencies = TestData.GetAspNetCoreTargetingPackDependencies() .Split(';', StringSplitOptions.RemoveEmptyEntries) .ToHashSet(); Assert.Equal(packageOverrideFileLines.Length, runtimeDependencies.Count + aspnetcoreDependencies.Count); // PackageOverrides versions should remain at Major.Minor.0 while servicing. var netCoreAppPackageVersion = TestData.GetMicrosoftNETCoreAppPackageVersion(); Assert.True( NuGetVersion.TryParse(netCoreAppPackageVersion, out var parsedVersion), "MicrosoftNETCoreAppPackageVersion must be convertable to a NuGetVersion."); if (parsedVersion.Patch != 0 && !parsedVersion.IsPrerelease) { netCoreAppPackageVersion = $"{parsedVersion.Major}.{parsedVersion.Minor}.0"; } var aspNetCoreAppPackageVersion = TestData.GetReferencePackSharedFxVersion(); Assert.True( NuGetVersion.TryParse(aspNetCoreAppPackageVersion, out parsedVersion), "ReferencePackSharedFxVersion must be convertable to a NuGetVersion."); if (parsedVersion.Patch != 0 && !parsedVersion.IsPrerelease) { aspNetCoreAppPackageVersion = $"{parsedVersion.Major}.{parsedVersion.Minor}.0"; } Assert.All(packageOverrideFileLines, entry => { var packageOverrideParts = entry.Split("|"); Assert.Equal(2, packageOverrideParts.Length); var packageName = packageOverrideParts[0]; var packageVersion = packageOverrideParts[1]; if (runtimeDependencies.Contains(packageName)) { Assert.Equal(netCoreAppPackageVersion, packageVersion); } else if (aspnetcoreDependencies.Contains(packageName)) { Assert.Equal(aspNetCoreAppPackageVersion, packageVersion); } else { Assert.True(false, $"{packageName} is not a recognized aspNetCore or runtime dependency"); } }); }