public void FindInstalledBundlesByMatches_WithMultipleMatchesOnTheSameBundle_OnlyReturnsTheSameBundleOnce() { var bundle = new BundleInfo("test", "", new Version()); var match1 = new FileReleaseInfo("match1", "", new Version("7.5.3.1"), null, bundle, null); var match2 = new FileReleaseInfo("match2", "", new Version("7.5.3.2"), null, bundle, null); var allMatches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> { match1, match2} }; var installedBundles = _projectUpgradeService.FindInstalledBundlesByMatches(allMatches, new Version("7.5.3")); Assert.AreEqual(1, installedBundles.Count()); Assert.AreEqual(bundle, installedBundles.First()); }
public void FindInstalledBundlesByMatches_DoesNotReturnBundlesWhereMajorMinorBuildDiffersFromMatchVersion() { var bundleToMatch = new BundleInfo("bundle to match", "", new Version()); var match1 = new FileReleaseInfo("match1", "", new Version("7.5.3.1"), null, bundleToMatch, null); var bundleToNotMatch = new BundleInfo("bundle to not match", "", new Version()); var match2 = new FileReleaseInfo("match2", "", new Version("7.5.0.1"), null, bundleToNotMatch, null); var allMatches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> { match1, match2} }; var installedBundles = _projectUpgradeService.FindInstalledBundlesByMatches(allMatches, new Version("7.5.3")); Assert.AreEqual(1, installedBundles.Count()); Assert.AreEqual(bundleToMatch, installedBundles.First()); }
public void DetermineProjectVersionFromMatches_WithNoMatchesWithProjects_ThrowsException() { var match = new FileReleaseInfo("", "", new Version(), null, null, null); var allMatches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> { match } }; _projectUpgradeService.DetermineProjectVersionFromMatches(allMatches); }
public void DetermineProjectVersionFromMatches_WithMultipleMatchesWithProjects_ReturnsProjectWithHighestVersion() { var highestVersionProject = new RegisteredProjectInfo("project1", null, new Version("2.0")); var lowestVersionProject = new RegisteredProjectInfo("project2", null, new Version("1.0")); var match1 = new FileReleaseInfo("", "", new Version(), null, null, highestVersionProject); var match2 = new FileReleaseInfo("", "", new Version(), null, null, lowestVersionProject); var matches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> {match1}, new List<FileReleaseInfo> {match2} }; _projectUpgradeService.RegisteredProjects.Add(0, highestVersionProject); _projectUpgradeService.RegisteredProjects.Add(1, lowestVersionProject); var matchedProject = _projectUpgradeService.DetermineProjectVersionFromMatches(matches); Assert.AreEqual(highestVersionProject, matchedProject); }
public void DetermineProjectVersionFromMatches_WithMatchWithoutProject_DoesNotIncludeProjectlessMatchInResultingCalcuation() { var expectedProject = new RegisteredProjectInfo("project", null, new Version("1.2.3.4")); var matchWithoutProject = new FileReleaseInfo("", "", new Version(), null, null, null); var matchWithProject = new FileReleaseInfo("", "", new Version(), null, null, expectedProject); var matches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> {matchWithProject}, new List<FileReleaseInfo> {matchWithoutProject} }; _projectUpgradeService.RegisteredProjects.Add(0, expectedProject); var matchedProject = _projectUpgradeService.DetermineProjectVersionFromMatches(matches); Assert.AreEqual(expectedProject, matchedProject); }
public void DetermineProjectVersionFromMatches_WithElementWithMultipleMatches_DoesNotIncludeMultipleMatchEntriesInResultingCalcuation() { var highestVersionProject = new RegisteredProjectInfo("project1", null, new Version("2.0")); var lowestVersionProject = new RegisteredProjectInfo("project2", null, new Version("1.0")); var match1 = new FileReleaseInfo("", "", new Version(), null, null, highestVersionProject); var match2 = new FileReleaseInfo("", "", new Version(), null, null, highestVersionProject); var match3 = new FileReleaseInfo("", "", new Version(), null, null, lowestVersionProject); var matches = new List<List<FileReleaseInfo>> { new List<FileReleaseInfo> {match1, match2}, new List<FileReleaseInfo> {match3} }; _projectUpgradeService.RegisteredProjects.Add(0, highestVersionProject); _projectUpgradeService.RegisteredProjects.Add(1, lowestVersionProject); var matchedProject = _projectUpgradeService.DetermineProjectVersionFromMatches(matches); Assert.AreEqual(lowestVersionProject, matchedProject); }