From dcbfca295dff41dea50b4db0a8c41c187d6a9fa6 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Sat, 1 Mar 2014 12:54:14 +0000 Subject: [PATCH] Reformat code. --- .../Project/Src/AvailablePackagesViewModel.cs | 21 +-- .../Project/Src/IPackageManagementSolution.cs | 18 +- .../Project/Src/PackageViewModel.cs | 167 ++++++++++-------- .../Project/Src/PackagesViewModel.cs | 22 ++- .../Src/SelectedProjectsForUpdatedPackages.cs | 3 +- .../Project/Src/UpdatedPackageViewModel.cs | 16 +- .../Src/UpdatedPackageViewModelFactory.cs | 9 +- .../Helpers/FakePackageManagementEvents.cs | 2 - .../Test/Src/PackageViewModelTests.cs | 61 ++----- .../Test/Src/RecentPackagesViewModelTests.cs | 2 +- 10 files changed, 149 insertions(+), 172 deletions(-) diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs b/src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs index f9eba421ff..5b381c6e7f 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs @@ -77,14 +77,11 @@ namespace ICSharpCode.PackageManagement if (availablePackagesRepository == null) { throw new ApplicationException(errorMessage); } - IQueryable allPackages; + if (IncludePrerelease) { - allPackages = availablePackagesRepository.GetPackages(); + return availablePackagesRepository.GetPackages(); } - else { - allPackages = availablePackagesRepository.GetPackages().Where(package => package.IsLatestVersion); - } - return allPackages; + return availablePackagesRepository.GetPackages().Where(package => package.IsLatestVersion); } /// @@ -97,17 +94,13 @@ namespace ICSharpCode.PackageManagement protected override IEnumerable GetFilteredPackagesBeforePagingResults(IQueryable allPackages) { - IEnumerable filteredPackages; if (IncludePrerelease) { - filteredPackages = base.GetFilteredPackagesBeforePagingResults(allPackages) - .DistinctLast(PackageEqualityComparer.Id); - } - else { - filteredPackages = base.GetFilteredPackagesBeforePagingResults(allPackages) - .Where(package => package.IsReleaseVersion()) + return base.GetFilteredPackagesBeforePagingResults(allPackages) .DistinctLast(PackageEqualityComparer.Id); } - return filteredPackages; + return base.GetFilteredPackagesBeforePagingResults(allPackages) + .Where(package => package.IsReleaseVersion()) + .DistinctLast(PackageEqualityComparer.Id); } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementSolution.cs b/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementSolution.cs index c6855a0028..ba3bd241e5 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementSolution.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementSolution.cs @@ -39,21 +39,29 @@ namespace ICSharpCode.PackageManagement bool HasMultipleProjects(); IEnumerable GetPackagesInReverseDependencyOrder(); string GetInstallPath(IPackage package); + ISolutionPackageRepository CreateSolutionPackageRepository(); - /// Return true if package is installed (solution/project) + /// + /// Returns true if package is installed in the solution or a project. + /// bool IsPackageInstalled(IPackage package); - /// Return installed (solution/project) packages + /// + /// Returns installed all packages in the packages folder. + /// IQueryable GetPackages(); - /// Returns installed project-packages (in any project) + /// + /// Returns packages installed in any project. + /// IQueryable GetProjectPackages(); - /// Returns installed solution-packages + /// + /// Returns installed solution level packages. + /// IQueryable GetSolutionPackages(); bool IsOpen { get; } string FileName { get; } - ISolutionPackageRepository CreateSolutionPackageRepository(); } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs b/src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs index a5016aa5d2..3379e790e6 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs @@ -38,6 +38,7 @@ namespace ICSharpCode.PackageManagement PackageViewModelOperationLogger logger; readonly IPackageActionRunner actionRunner; IPackageViewModelParent parent; + bool packageIsChanging; public PackageViewModel( IPackageViewModelParent parent, @@ -118,8 +119,8 @@ namespace ICSharpCode.PackageManagement public bool IsAdded { get { if (selectedProjects.HasSingleProjectSelected()) { - return selectedProjects.GetSingleProjectSelected(package.Repository).IsPackageInstalled(package) - || (IsPackageInstalled() && !IsProjectPackage(package)); + return selectedProjects.GetSingleProjectSelected(package.Repository).IsPackageInstalled(package) || + (IsPackageInstalled() && !IsProjectPackage(package)); } return IsPackageInstalled(); } @@ -197,35 +198,34 @@ namespace ICSharpCode.PackageManagement public bool HasLastPublished { get { return package.Published.HasValue; } } - - /// - /// Make this & IPackageExtensions.IsProjectPackage overridable/testable - /// - /// - /// - protected virtual bool IsProjectPackage(IPackage package) { + + protected virtual bool IsProjectPackage(IPackage package) + { return package.IsProjectPackage(); } - - bool packageIsChanging = false; - public void PackageChanged() { - if (packageIsChanging) return; - else packageIsChanging = true; + + public void PackageChanged() + { + if (packageIsChanging) + return; + + packageIsChanging = true; + OnPropertyChanged(model => model.IsManaged); OnPropertyChanged(model => model.IsAdded); + packageIsChanging = false; } - public void AddOrManagePackage() { + public void AddOrManagePackage() + { if (selectedProjects.HasMultipleProjects()) { if (IsProjectPackage(package)) { ManagePackage(); - } - else { + } else { AddPackage(); } - } - else { + } else { AddPackage(); } } @@ -235,19 +235,18 @@ namespace ICSharpCode.PackageManagement ClearReportedMessages(); logger.LogAddingPackage(); - using (IDisposable operation = StartOperation(package)) { + using (IDisposable operation = StartInstallOperation(package)) { if (IsProjectPackage(package)) { - TryProjectPackageInstall(); - } - else { - TrySolutionPackageInstall(); + TryInstallingPackageIntoProject(); + } else { + TryInstallingPackageIntoSolution(); } } logger.LogAfterPackageOperationCompletes(); } - protected virtual IDisposable StartOperation(IPackageFromRepository package) + protected virtual IDisposable StartInstallOperation(IPackageFromRepository package) { return package.StartInstallOperation(); } @@ -257,7 +256,7 @@ namespace ICSharpCode.PackageManagement packageManagementEvents.OnPackageOperationsStarting(); } - void ProjectPackageGetInstallOperations() + void GetInstallOperationsForProject() { IPackageManagementProject project = GetSingleProjectSelected(); project.Logger = logger; @@ -266,12 +265,11 @@ namespace ICSharpCode.PackageManagement packageOperations = project.GetInstallPackageOperations(package, installAction); } - void ProjectPackageGetInstallOperations(IEnumerable projects) { + void GetInstallOperationsForSelectedProjects(IEnumerable projects) + { packageOperations = new PackageOperation[0]; - IPackageManagementSelectedProject firstSelectedProject = ( - from project in projects - where project.IsSelected - select project).FirstOrDefault(); + + IPackageManagementSelectedProject firstSelectedProject = projects.FirstOrDefault(project => project.IsSelected); if (firstSelectedProject != null) { InstallPackageAction installAction = firstSelectedProject.Project.CreateInstallPackageAction(); @@ -307,17 +305,17 @@ namespace ICSharpCode.PackageManagement return packages; } - bool PackageRequiresLicenseAcceptance(IPackage iPackage) + bool PackageRequiresLicenseAcceptance(IPackage packageToCheck) { - return iPackage.RequireLicenseAcceptance && !IsPackageInstalled(iPackage); + return packageToCheck.RequireLicenseAcceptance && !IsPackageInstalled(packageToCheck); } - bool IsPackageInstalled(IPackage iPackage) + bool IsPackageInstalled(IPackage packageToCheck) { - return selectedProjects.Solution.IsPackageInstalled(iPackage); + return selectedProjects.Solution.IsPackageInstalled(packageToCheck); } - protected virtual void TrySolutionPackageInstall() + protected virtual void TryInstallingPackageIntoSolution() { try { var solutionRepository = selectedProjects.Solution.CreateSolutionPackageRepository(); @@ -325,22 +323,25 @@ namespace ICSharpCode.PackageManagement installAction.Package = package; installAction.IgnoreDependencies = false; installAction.AllowPrereleaseVersions = parent.IncludePrerelease; - SolutionPackageGetInstallOperations(solutionRepository, installAction, package); + + GetInstallOperationsForSolutionPackage(solutionRepository, installAction, package); + if (LicensesAccepted()) { - SolutionPackageInstall(solutionRepository, installAction, package); + InstallPackageIntoSolution(solutionRepository, installAction, package); packageManagementEvents.OnParentPackageInstalled(package); } + } catch (Exception ex) { ReportError(ex); logger.LogError(ex); } - } + } - void SolutionPackageGetInstallOperations( + void GetInstallOperationsForSolutionPackage( ISolutionPackageRepository solutionRepository, InstallPackageAction installAction, - IPackageFromRepository installPackage) { - + IPackageFromRepository installPackage) + { var resolverFactory = new PackageOperationsResolverFactory(); var resolver = resolverFactory.CreateInstallPackageOperationResolver( solutionRepository.Repository, @@ -350,15 +351,17 @@ namespace ICSharpCode.PackageManagement packageOperations = resolver.ResolveOperations(installPackage); } - void SolutionPackageInstall( + void InstallPackageIntoSolution( ISolutionPackageRepository solutionRepository, InstallPackageAction installAction, - IPackageFromRepository installPackage) { + IPackageFromRepository installPackage) + { var packageManager = new PackageManager( installPackage.Repository, solutionRepository.PackagePathResolver, solutionRepository.FileSystem, solutionRepository.Repository); + packageManager.InstallPackage( installPackage.Id, installPackage.Version, @@ -366,33 +369,37 @@ namespace ICSharpCode.PackageManagement installAction.AllowPrereleaseVersions); } - protected virtual void TrySolutionPackageUpdate() + protected virtual void TryUpdatingPackageInSolution() { try { var solutionRepository = selectedProjects.Solution.CreateSolutionPackageRepository(); var updateAction = new UpdatePackageAction(null, packageManagementEvents); updateAction.Package = package; updateAction.AllowPrereleaseVersions = parent.IncludePrerelease; - SolutionPackageGetUpdateOperations(solutionRepository, updateAction, package); + + GetUpdateOperationsForSolutionPackage(solutionRepository, updateAction, package); + if (LicensesAccepted()) { - SolutionPackageUpdate(solutionRepository, updateAction, package); - IEnumerable updatedPackages = ( - from packageOperation in packageOperations - where packageOperation.Package != null - select packageOperation.Package).Distinct(); + UpdateSolutionLevelPackage(solutionRepository, updateAction, package); + + IEnumerable updatedPackages = packageOperations + .Where(packageOperation => packageOperation.Package != null) + .Select(packageOperation => packageOperation.Package) + .Distinct(); + packageManagementEvents.OnParentPackagesUpdated(updatedPackages); } } catch (Exception ex) { ReportError(ex); logger.LogError(ex); } - } + } - void SolutionPackageGetUpdateOperations( + void GetUpdateOperationsForSolutionPackage( ISolutionPackageRepository solutionRepository, UpdatePackageAction updateAction, - IPackageFromRepository updatePackage) { - + IPackageFromRepository updatePackage) + { var resolverFactory = new PackageOperationsResolverFactory(); var resolver = resolverFactory.CreateUpdatePackageOperationResolver( solutionRepository.Repository, @@ -402,27 +409,29 @@ namespace ICSharpCode.PackageManagement packageOperations = resolver.ResolveOperations(updatePackage); } - void SolutionPackageUpdate( + void UpdateSolutionLevelPackage( ISolutionPackageRepository solutionRepository, UpdatePackageAction updateAction, - IPackageFromRepository updatePackage) { + IPackageFromRepository updatePackage) + { var packageManager = new PackageManager( updatePackage.Repository, solutionRepository.PackagePathResolver, solutionRepository.FileSystem, solutionRepository.Repository); + packageManager.UpdatePackage( updatePackage.Id, updateAction.UpdateDependencies, updateAction.AllowPrereleaseVersions); } - void TryProjectPackageInstall() + void TryInstallingPackageIntoProject() { try { - ProjectPackageGetInstallOperations(); + GetInstallOperationsForProject(); if (LicensesAccepted()) { - ProjectPackageInstall(); + InstallPackageIntoProject(); } } catch (Exception ex) { ReportError(ex); @@ -430,12 +439,12 @@ namespace ICSharpCode.PackageManagement } } - void ProjectPackageInstall() + void InstallPackageIntoProject() { - ProjectPackageInstall(packageOperations); + InstallPackageIntoProject(packageOperations); } - void ProjectPackageInstall(IEnumerable installOperations) + void InstallPackageIntoProject(IEnumerable installOperations) { IPackageManagementProject project = GetSingleProjectSelected(); ProcessPackageOperationsAction action = CreateInstallPackageAction(project); @@ -456,16 +465,15 @@ namespace ICSharpCode.PackageManagement packageManagementEvents.OnPackageOperationError(ex); } - public void RemoveOrManagePackage() { + public void RemoveOrManagePackage() + { if (selectedProjects.HasMultipleProjects()) { if (IsProjectPackage(package)) { ManagePackage(); - } - else { + } else { RemovePackage(); } - } - else { + } else { RemovePackage(); } } @@ -476,7 +484,7 @@ namespace ICSharpCode.PackageManagement logger.LogRemovingPackage(); if (IsProjectPackage(package)) { - TryProjectPackageUninstall(); + TryUninstallingPackageFromProject(); } else { TrySolutionPackageUninstall(); } @@ -489,11 +497,12 @@ namespace ICSharpCode.PackageManagement logger.LogRemovingPackage(); } - void TrySolutionPackageUninstall() { - TrySolutionPackageUninstall(package); + void TrySolutionPackageUninstall() + { + TryUninstallingPackageFromSolution(package); } - protected void TrySolutionPackageUninstall(IPackage removePackage) + protected void TryUninstallingPackageFromSolution(IPackage removePackage) { try { var solutionPackageRepository = PackageManagementServices.Solution.CreateSolutionPackageRepository(); @@ -501,16 +510,20 @@ namespace ICSharpCode.PackageManagement solutionPackageRepository.Repository, solutionPackageRepository.PackagePathResolver, solutionPackageRepository.FileSystem); + packageManager.UninstallPackage(removePackage); + solutionPackageRepository.Repository.RemovePackage(removePackage); + packageManagementEvents.OnParentPackageUninstalled(removePackage); + } catch (Exception ex) { ReportError(ex); logger.LogError(ex); } } - void TryProjectPackageUninstall() + void TryUninstallingPackageFromProject() { try { IPackageManagementProject project = GetSingleProjectSelected(); @@ -562,7 +575,7 @@ namespace ICSharpCode.PackageManagement ClearReportedMessages(); logger.LogManagingPackage(); - using (IDisposable operation = StartOperation(package)) { + using (IDisposable operation = StartInstallOperation(package)) { TryManagePackagesForSelectedProjects(projects); } @@ -632,8 +645,9 @@ namespace ICSharpCode.PackageManagement return null; } - bool LicensesAccepted(IEnumerable projects) { - ProjectPackageGetInstallOperations(projects); + bool LicensesAccepted(IEnumerable projects) + { + GetInstallOperationsForSelectedProjects(projects); return LicensesAccepted(); } @@ -684,6 +698,5 @@ namespace ICSharpCode.PackageManagement actionRunner.Run(actions); } } - } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/PackagesViewModel.cs b/src/AddIns/Misc/PackageManagement/Project/Src/PackagesViewModel.cs index 802718cfd4..39f9395428 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/PackagesViewModel.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/PackagesViewModel.cs @@ -110,13 +110,15 @@ namespace ICSharpCode.PackageManagement protected void OnPackageChanged(object sender, EventArgs e) { - if (IsReadingPackages) return; - if (PackageViewModels == null) return; - - // refresh all because we don't know if any dependant package is (un)installed - foreach (var packageViewModel in this.PackageViewModels) { - if (!IsReadingPackages) + if (IsReadingPackages || (PackageViewModels == null)) { + return; + } + + // refresh all because we don't know if any dependent package is (un)installed + foreach (PackageViewModel packageViewModel in PackageViewModels) { + if (!IsReadingPackages) { packageViewModel.PackageChanged(); + } } } @@ -268,12 +270,8 @@ namespace ICSharpCode.PackageManagement return null; } - /// - /// Make this & IPackageExtensions.IsProjectPackage overridable/testable - /// - /// - /// - protected virtual bool IsProjectPackage (IPackage package) { + protected virtual bool IsProjectPackage (IPackage package) + { return package.IsProjectPackage(); } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/SelectedProjectsForUpdatedPackages.cs b/src/AddIns/Misc/PackageManagement/Project/Src/SelectedProjectsForUpdatedPackages.cs index 2786058921..401efe9b99 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/SelectedProjectsForUpdatedPackages.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/SelectedProjectsForUpdatedPackages.cs @@ -22,12 +22,13 @@ using NuGet; namespace ICSharpCode.PackageManagement { - public class SelectedProjectsForUpdatedPackages : SelectedProjectsForInstalledPackages + public class SelectedProjectsForUpdatedPackages : PackageManagementSelectedProjects { public SelectedProjectsForUpdatedPackages(IPackageManagementSolution solution) : base(solution) { } + protected override bool IsProjectSelected(IPackageManagementProject project, IPackageFromRepository package) { return IsProjectEnabled(project, package); diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModel.cs b/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModel.cs index 5345d2ac63..a135645cb3 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModel.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModel.cs @@ -43,26 +43,26 @@ namespace ICSharpCode.PackageManagement SelectedProjectsForUpdatedPackages selectedProjects; - protected override void TrySolutionPackageInstall() - { // Modify PackageViewModel logic - base.TrySolutionPackageUpdate(); + protected override void TryInstallingPackageIntoSolution() + { + TryUpdatingPackageInSolution(); } protected override ProcessPackageAction CreatePackageManageAction(IPackageManagementSelectedProject selectedProject) - { // Modify PackageViewModel logic + { if (selectedProject.IsSelected) { - return base.CreateUpdatePackageManageActionForSelectedProject(selectedProject); + return CreateUpdatePackageManageActionForSelectedProject(selectedProject); } return null; } - protected override IDisposable StartOperation(IPackageFromRepository package) - { // Modify PackageViewModel logic + protected override IDisposable StartInstallOperation(IPackageFromRepository package) + { return package.StartUpdateOperation(); } protected override ProcessPackageOperationsAction CreateInstallPackageAction(IPackageManagementProject project) - { // Modify UpdatePackageAction logic + { return project.CreateUpdatePackageAction(); } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModelFactory.cs b/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModelFactory.cs index f7e9703e36..5ad7a450b4 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModelFactory.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/UpdatedPackageViewModelFactory.cs @@ -23,11 +23,12 @@ namespace ICSharpCode.PackageManagement { public class UpdatedPackageViewModelFactory : PackageViewModelFactory { - SelectedProjectsForUpdatedPackages selectedProjects; + SelectedProjectsForUpdatedPackages selectedProjectsForUpdatedPackages; public UpdatedPackageViewModelFactory(IPackageViewModelFactory packageViewModelFactory) - : base(packageViewModelFactory) { - selectedProjects = new SelectedProjectsForUpdatedPackages(Solution); + : base(packageViewModelFactory) + { + selectedProjectsForUpdatedPackages = new SelectedProjectsForUpdatedPackages(Solution); } public override PackageViewModel CreatePackageViewModel(IPackageViewModelParent parent, IPackageFromRepository package) @@ -35,7 +36,7 @@ namespace ICSharpCode.PackageManagement return new UpdatedPackageViewModel( parent, package, - selectedProjects, + selectedProjectsForUpdatedPackages, PackageManagementEvents, PackageActionRunner, Logger); diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakePackageManagementEvents.cs b/src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakePackageManagementEvents.cs index fcb960a123..67709a3e9a 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakePackageManagementEvents.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakePackageManagementEvents.cs @@ -75,7 +75,6 @@ namespace PackageManagement.Tests.Helpers { PackagePassedToOnParentPackageInstalled = package; IsOnParentPackageInstalledCalled = true; - if (PackageViewModel != null) PackageViewModel.PackageChanged(); } public IPackage PackagePassedToOnParentPackageUninstalled; @@ -83,7 +82,6 @@ namespace PackageManagement.Tests.Helpers public void OnParentPackageUninstalled(IPackage package) { PackagePassedToOnParentPackageUninstalled = package; - if (PackageViewModel != null) PackageViewModel.PackageChanged(); } public MessageLevel MessageLevelPassedToOnPackageOperationMessageLogged; diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs index 6e25ff92ff..2ac900a373 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs @@ -220,30 +220,21 @@ namespace PackageManagement.Tests } [Test] - [Category("ToDo")] - [Description("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged")] - public void AddPackage_PackageAddedSuccessfully_PropertyNotifyChangedFiredForIsAddedProperty() + public void PackageChanged_PackageAddedSuccessfully_PropertyNotifyChangedFiredForIsAddedProperty() { CreateViewModel(); viewModel.AddOneFakeInstallPackageOperationForViewModelPackage(); - string propertyChangedName = null; viewModel.PropertyChanged += (sender, e) => propertyChangedName = e.PropertyName; - viewModel.AddPackage(); - - // fake fire parent action because there is no viewModel.parent in this test fixture - // Assert.Inconclusive("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged"); - viewModel.FakePackageManagementEvents.PackageViewModel = viewModel; - viewModel.FakePackageManagementEvents.OnParentPackageInstalled(viewModel.FakePackage); + + viewModel.PackageChanged(); Assert.AreEqual("IsAdded", propertyChangedName); } [Test] - [Category("ToDo")] - [Description("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged")] - public void AddPackage_PackageAddedSuccessfully_PropertyNotifyChangedFiredAfterPackageInstalled() + public void PackageChanged_PackageAddedSuccessfully_PropertyNotifyChangedFiredAfterPackageInstalled() { CreateViewModel(); IPackage packagePassedToInstallPackageWhenPropertyNameChanged = null; @@ -253,10 +244,7 @@ namespace PackageManagement.Tests }; viewModel.AddPackage(); - // fake fire parent action because there is no viewModel.parent in this test fixture - // Assert.Inconclusive("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged"); - viewModel.FakePackageManagementEvents.PackageViewModel = viewModel; - viewModel.FakePackageManagementEvents.OnParentPackageInstalled(viewModel.FakePackage); + viewModel.PackageChanged(); Assert.AreEqual(fakePackage, packagePassedToInstallPackageWhenPropertyNameChanged); } @@ -352,27 +340,20 @@ namespace PackageManagement.Tests } [Test] - [Category("ToDo")] - [Description("OnParentPackageUninstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged")] - public void RemovePackage_PackageRemovedSuccessfully_PropertyNotifyChangedFiredForIsAddedProperty() + public void PackageChanged_PackageRemovedSuccessfully_PropertyNotifyChangedFiredForIsAddedProperty() { - CreateViewModel(); string propertyChangedName = null; viewModel.PropertyChanged += (sender, e) => propertyChangedName = e.PropertyName; viewModel.RemovePackage(); - // fake fire parent action because there is no viewModel.parent in this test fixture - viewModel.FakePackageManagementEvents.PackageViewModel = viewModel; - viewModel.FakePackageManagementEvents.OnParentPackageUninstalled(viewModel.FakePackage); + viewModel.PackageChanged(); Assert.AreEqual("IsAdded", propertyChangedName); } [Test] - [Category("ToDo")] - [Description("OnParentPackageUninstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged")] - public void RemovePackage_PackageRemovedSuccessfully_PropertyNotifyChangedFiredAfterPackageUninstalled() + public void PackageChanged_PackageRemovedSuccessfully_PropertyNotifyChangedFiredAfterPackageUninstalled() { CreateViewModel(); IPackage packagePassedToUninstallPackageWhenPropertyNameChanged = null; @@ -381,9 +362,7 @@ namespace PackageManagement.Tests }; viewModel.RemovePackage(); - // fake fire parent action because there is no viewModel.parent in this test fixture - viewModel.FakePackageManagementEvents.PackageViewModel = viewModel; - viewModel.FakePackageManagementEvents.OnParentPackageUninstalled(viewModel.FakePackage); + viewModel.PackageChanged(); Assert.AreEqual(fakePackage, packagePassedToUninstallPackageWhenPropertyNameChanged); } @@ -839,7 +818,7 @@ namespace PackageManagement.Tests } [Test] - public void IsManaged_SolutionSelectedContainingTwoProjects_ReturnsTrue() + public void IsManaged_SolutionSelectedContainingTwoProjects_ReturnsFalsew() { CreateFakeSolution(); AddProjectToSolution(); @@ -849,15 +828,12 @@ namespace PackageManagement.Tests bool managed = viewModel.IsManaged; - // Assert.IsTrue(managed); // Only installed project-level package "IsManaged" Assert.IsFalse(managed); - bool added = viewModel.IsAdded; - Assert.IsFalse(added); } [Test] - public void IsManaged_SolutionSelectedContainingOneProject_ReturnsTrue() + public void IsManaged_SolutionSelectedContainingOneProject_ReturnsFalse() { CreateFakeSolution(); AddProjectToSolution(); @@ -866,11 +842,7 @@ namespace PackageManagement.Tests bool managed = viewModel.IsManaged; - // Assert.IsTrue(managed); - // Only installed project-level package "IsManaged" Assert.IsFalse(managed); - bool added = viewModel.IsAdded; - Assert.IsFalse(added); } [Test] @@ -926,24 +898,17 @@ namespace PackageManagement.Tests } [Test] - [Category("ToDo")] - [Description("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged")] - public void ManagePackage_TwoProjectsSelectedAndUserAcceptsSelectedProjects_IsAddedPropertyChanged() + public void PackageChanged_TwoProjectsSelectedAndUserAcceptsSelectedProjects_IsAddedPropertyChanged() { CreateViewModelWithTwoProjectsSelected("Project A", "Project B"); viewModel.FakePackageManagementEvents.ProjectsToSelect.Add("Project A"); viewModel.FakePackageManagementEvents.ProjectsToSelect.Add("Project B"); UserAcceptsProjectSelection(); - string propertyChangedName = null; viewModel.PropertyChanged += (sender, e) => propertyChangedName = e.PropertyName; - viewModel.ManagePackage(); - // fake fire parent action because there is no viewModel.parent in this test fixture - // Assert.Inconclusive("OnParentPackageInstalled event, parent ([derived]PackagesViewModel) will call ReadPackages() or OnPackageChanged"); - viewModel.FakePackageManagementEvents.PackageViewModel = viewModel; - viewModel.FakePackageManagementEvents.OnParentPackageInstalled(viewModel.FakePackage); + viewModel.PackageChanged(); Assert.AreEqual("IsAdded", propertyChangedName); } diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/RecentPackagesViewModelTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/RecentPackagesViewModelTests.cs index 9363af2b86..84bb206eb6 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/RecentPackagesViewModelTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/RecentPackagesViewModelTests.cs @@ -95,7 +95,7 @@ namespace PackageManagement.Tests packageManagementEvents.OnParentPackageUninstalled(new FakePackage()); CompleteReadPackagesTask(); - var expectedPackages = new FakePackage[] {}; + var expectedPackages = new FakePackage[0]; PackageCollectionAssert.AreEqual(expectedPackages, viewModel.PackageViewModels); }