public void FeedPackageIdentityEquals(string idA, string versionA, string idB, string versionB, bool success) { var packageA = new FeedPackageIdentity(idA, versionA); var packageB = new FeedPackageIdentity(idB, versionB); Assert.Equal(success, packageA.Equals(packageB)); Assert.Equal(success, packageB.Equals(packageA)); Assert.Equal(success, packageA.GetHashCode() == packageB.GetHashCode()); }
public void PackageIdentityConstructorUsesFullString() { const string id = "id"; const string versionString = "1.0.0+buildmetadata"; var package = new PackageIdentity(id, NuGetVersion.Parse(versionString)); var feedPackage = new FeedPackageIdentity(package); var equivalentFeedPackage1 = new FeedPackageIdentity(id, versionString); var equivalentFeedPackage2 = new FeedPackageIdentity(package.Id, package.Version.ToFullString()); var differentFeedPackage = new FeedPackageIdentity(package.Id, package.Version.ToNormalizedString()); foreach (var equivalentFeedPackage in new FeedPackageIdentity[] { equivalentFeedPackage1, equivalentFeedPackage2 }) { Assert.True(feedPackage.Equals(equivalentFeedPackage)); Assert.Equal(feedPackage.GetHashCode(), equivalentFeedPackage.GetHashCode()); } Assert.False(feedPackage.Equals(differentFeedPackage)); Assert.NotEqual(feedPackage.GetHashCode(), differentFeedPackage.GetHashCode()); }