Browse Source

Prevent the projects selected from changing when the Manage Packages dialog is opened.

pull/16/merge
Matt Ward 15 years ago
parent
commit
7355907ff1
  1. 2
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementSolution.cs
  2. 21
      src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementSelectedProjects.cs
  3. 10
      src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs
  4. 10
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/ExceptionThrowingPackageManagementService.cs
  5. 5
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestablePackageViewModel.cs
  6. 1
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableUpdatedPackageViewModel.cs
  7. 2
      src/AddIns/Misc/PackageManagement/Test/Src/ManagePackagesViewModelTests.cs
  8. 49
      src/AddIns/Misc/PackageManagement/Test/Src/PackageManagementSelectedProjectsTests.cs
  9. 41
      src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs
  10. 4
      src/AddIns/Misc/PackageManagement/Test/Src/UpdatedPackageViewModelTests.cs
  11. 6
      src/AddIns/Misc/PackageManagement/Test/Src/UpdatedPackagesViewModelTests.cs

2
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementSolution.cs

@ -73,7 +73,7 @@ namespace ICSharpCode.PackageManagement.Design
public Dictionary<string, FakePackageManagementProject> FakeProjectsToReturnFromGetProject public Dictionary<string, FakePackageManagementProject> FakeProjectsToReturnFromGetProject
= new Dictionary<string, FakePackageManagementProject>(); = new Dictionary<string, FakePackageManagementProject>();
public IPackageManagementProject GetProject(IPackageRepository sourceRepository, IProject project) public virtual IPackageManagementProject GetProject(IPackageRepository sourceRepository, IProject project)
{ {
RepositoryPassedToGetProject = sourceRepository; RepositoryPassedToGetProject = sourceRepository;
ProjectPassedToGetProject = project; ProjectPassedToGetProject = project;

21
src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementSelectedProjects.cs

@ -14,7 +14,7 @@ namespace ICSharpCode.PackageManagement
public class PackageManagementSelectedProjects public class PackageManagementSelectedProjects
{ {
IPackageManagementSolution solution; IPackageManagementSolution solution;
bool? singledProjectSelected; bool? singleProjectSelected;
IProject singleMSBuildProjectSelected; IProject singleMSBuildProjectSelected;
public PackageManagementSelectedProjects(IPackageManagementSolution solution) public PackageManagementSelectedProjects(IPackageManagementSolution solution)
@ -35,11 +35,11 @@ namespace ICSharpCode.PackageManagement
public bool HasSingleProjectSelected() public bool HasSingleProjectSelected()
{ {
if (!singledProjectSelected.HasValue) { if (!singleProjectSelected.HasValue) {
singleMSBuildProjectSelected = solution.GetActiveMSBuildProject(); singleMSBuildProjectSelected = solution.GetActiveMSBuildProject();
singledProjectSelected = singleMSBuildProjectSelected != null; singleProjectSelected = singleMSBuildProjectSelected != null;
} }
return singledProjectSelected.Value; return singleProjectSelected.Value;
} }
IEnumerable<IProject> GetOpenProjects() IEnumerable<IProject> GetOpenProjects()
@ -101,8 +101,8 @@ namespace ICSharpCode.PackageManagement
/// </summary> /// </summary>
public bool IsPackageInstalled(IPackageFromRepository package) public bool IsPackageInstalled(IPackageFromRepository package)
{ {
IPackageManagementProject project = solution.GetActiveProject(package.Repository); if (HasSingleProjectSelected()) {
if (project != null) { IPackageManagementProject project = GetSingleProjectSelected(package.Repository);
return project.IsPackageInstalled(package); return project.IsPackageInstalled(package);
} }
return IsPackageInstalledInSolution(package); return IsPackageInstalledInSolution(package);
@ -121,15 +121,18 @@ namespace ICSharpCode.PackageManagement
public IQueryable<IPackage> GetInstalledPackages(IPackageRepository sourceRepository) public IQueryable<IPackage> GetInstalledPackages(IPackageRepository sourceRepository)
{ {
if (HasSingleProjectSelected()) { if (HasSingleProjectSelected()) {
IPackageManagementProject project = GetActiveProject(sourceRepository); IPackageManagementProject project = GetSingleProjectSelected(sourceRepository);
return project.GetPackages(); return project.GetPackages();
} }
return GetPackagesInstalledInSolution(); return GetPackagesInstalledInSolution();
} }
public IPackageManagementProject GetActiveProject(IPackageRepository repository) public IPackageManagementProject GetSingleProjectSelected(IPackageRepository repository)
{ {
return solution.GetActiveProject(repository); if (HasSingleProjectSelected()) {
return solution.GetProject(repository, singleMSBuildProjectSelected);
}
return null;
} }
} }
} }

10
src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs

@ -172,14 +172,14 @@ namespace ICSharpCode.PackageManagement
void GetPackageOperations() void GetPackageOperations()
{ {
IPackageManagementProject project = GetActiveProject(); IPackageManagementProject project = GetSingleProjectSelected();
project.Logger = logger; project.Logger = logger;
packageOperations = project.GetInstallPackageOperations(package, false); packageOperations = project.GetInstallPackageOperations(package, false);
} }
IPackageManagementProject GetActiveProject() IPackageManagementProject GetSingleProjectSelected()
{ {
return selectedProjects.GetActiveProject(package.Repository); return selectedProjects.GetSingleProjectSelected(package.Repository);
} }
bool CanInstallPackage() bool CanInstallPackage()
@ -244,7 +244,7 @@ namespace ICSharpCode.PackageManagement
void InstallPackage(IEnumerable<PackageOperation> packageOperations) void InstallPackage(IEnumerable<PackageOperation> packageOperations)
{ {
IPackageManagementProject project = GetActiveProject(); IPackageManagementProject project = GetSingleProjectSelected();
ProcessPackageOperationsAction action = CreateInstallPackageAction(project); ProcessPackageOperationsAction action = CreateInstallPackageAction(project);
action.Package = package; action.Package = package;
action.Operations = packageOperations; action.Operations = packageOperations;
@ -280,7 +280,7 @@ namespace ICSharpCode.PackageManagement
void TryUninstallingPackage() void TryUninstallingPackage()
{ {
try { try {
IPackageManagementProject project = GetActiveProject(); IPackageManagementProject project = GetSingleProjectSelected();
UninstallPackageAction action = project.CreateUninstallPackageAction(); UninstallPackageAction action = project.CreateUninstallPackageAction();
action.Package = package; action.Package = package;
actionRunner.Run(action); actionRunner.Run(action);

10
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/ExceptionThrowingPackageManagementService.cs

@ -5,6 +5,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using ICSharpCode.PackageManagement; using ICSharpCode.PackageManagement;
using ICSharpCode.PackageManagement.Design; using ICSharpCode.PackageManagement.Design;
using ICSharpCode.SharpDevelop.Project;
using NuGet; using NuGet;
namespace PackageManagement.Tests.Helpers namespace PackageManagement.Tests.Helpers
@ -12,6 +13,7 @@ namespace PackageManagement.Tests.Helpers
public class ExceptionThrowingPackageManagementSolution : FakePackageManagementSolution public class ExceptionThrowingPackageManagementSolution : FakePackageManagementSolution
{ {
public Exception ExceptionToThrowWhenGetActiveProjectCalled { get; set; } public Exception ExceptionToThrowWhenGetActiveProjectCalled { get; set; }
public Exception ExceptionToThrowWhenGetProjectCalled { get; set; }
public override IPackageManagementProject GetActiveProject() public override IPackageManagementProject GetActiveProject()
{ {
@ -28,5 +30,13 @@ namespace PackageManagement.Tests.Helpers
} }
return base.GetActiveProject(sourceRepository); return base.GetActiveProject(sourceRepository);
} }
public override IPackageManagementProject GetProject(IPackageRepository sourceRepository, IProject project)
{
if (ExceptionToThrowWhenGetProjectCalled != null) {
throw ExceptionToThrowWhenGetProjectCalled;
}
return base.GetProject(sourceRepository, project);
}
} }
} }

5
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestablePackageViewModel.cs

@ -25,6 +25,7 @@ namespace PackageManagement.Tests.Helpers
new FakeLogger()) new FakeLogger())
{ {
this.FakeSolution = solution; this.FakeSolution = solution;
solution.FakeActiveMSBuildProject = ProjectHelper.CreateTestProject();
} }
public TestablePackageViewModel( public TestablePackageViewModel(
@ -63,7 +64,7 @@ namespace PackageManagement.Tests.Helpers
var operation = new FakePackageOperation(FakePackage, PackageAction.Install); var operation = new FakePackageOperation(FakePackage, PackageAction.Install);
FakeSolution FakeSolution
.FakeActiveProject .FakeProjectToReturnFromGetProject
.FakeInstallOperations .FakeInstallOperations
.Add(operation); .Add(operation);
@ -74,7 +75,7 @@ namespace PackageManagement.Tests.Helpers
{ {
var package = new FakePackage("PackageToUninstall"); var package = new FakePackage("PackageToUninstall");
var operation = new FakePackageOperation(package, PackageAction.Uninstall); var operation = new FakePackageOperation(package, PackageAction.Uninstall);
FakeSolution.FakeActiveProject.FakeInstallOperations.Add(operation); FakeSolution.FakeProjectToReturnFromGetProject.FakeInstallOperations.Add(operation);
return operation; return operation;
} }
} }

1
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableUpdatedPackageViewModel.cs

@ -32,6 +32,7 @@ namespace PackageManagement.Tests.Helpers
new FakeLogger()) new FakeLogger())
{ {
this.FakeSolution = solution; this.FakeSolution = solution;
solution.FakeActiveMSBuildProject = ProjectHelper.CreateTestProject("MyProject");
} }
public TestableUpdatedPackageViewModel( public TestableUpdatedPackageViewModel(

2
src/AddIns/Misc/PackageManagement/Test/Src/ManagePackagesViewModelTests.cs

@ -169,7 +169,7 @@ namespace PackageManagement.Tests
Id = "Test", Id = "Test",
Version = new Version("1.0.0.0") Version = new Version("1.0.0.0")
}; };
fakeSolution.AddPackageToActiveProjectLocalRepository(oldPackage); fakeSolution.FakeProjectToReturnFromGetProject.FakePackages.Add(oldPackage);
var newPackage = new FakePackage() { var newPackage = new FakePackage() {
Id = "Test", Id = "Test",

49
src/AddIns/Misc/PackageManagement/Test/Src/PackageManagementSelectedProjectsTests.cs

@ -277,7 +277,7 @@ namespace PackageManagement.Tests
fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0]; fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0];
var package = new FakePackage("Test"); var package = new FakePackage("Test");
fakeSolution.FakeActiveProject.FakePackages.Add(package); fakeSolution.FakeProjectToReturnFromGetProject.FakePackages.Add(package);
bool installed = selectedProjects.IsPackageInstalled(package); bool installed = selectedProjects.IsPackageInstalled(package);
@ -307,7 +307,7 @@ namespace PackageManagement.Tests
var package = new FakePackage("Test"); var package = new FakePackage("Test");
bool installed = selectedProjects.IsPackageInstalled(package); bool installed = selectedProjects.IsPackageInstalled(package);
IPackageRepository repository = fakeSolution.RepositoryPassedToGetActiveProject; IPackageRepository repository = fakeSolution.RepositoryPassedToGetProject;
IPackageRepository expectedRepository = package.FakePackageRepository; IPackageRepository expectedRepository = package.FakePackageRepository;
Assert.AreEqual(expectedRepository, repository); Assert.AreEqual(expectedRepository, repository);
@ -362,31 +362,44 @@ namespace PackageManagement.Tests
} }
[Test] [Test]
public void GetActiveProject_ProjectSelected_ReturnsProject() public void GetSingleProjectSelected_ProjectSelected_ReturnsProject()
{ {
CreateSelectedProjects(); CreateSelectedProjects();
List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService(); List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0]; fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0];
var repository = new FakePackageRepository(); var repository = new FakePackageRepository();
IPackageManagementProject project = selectedProjects.GetActiveProject(repository); IPackageManagementProject project = selectedProjects.GetSingleProjectSelected(repository);
FakePackageManagementProject expectedProject = fakeSolution.FakeActiveProject; FakePackageManagementProject expectedProject = fakeSolution.FakeProjectToReturnFromGetProject;
Assert.AreEqual(expectedProject, project); Assert.AreEqual(expectedProject, project);
} }
[Test] [Test]
public void GetActiveProject_ProjectSelectedAndRepositoryPassed_ReturnsProjectCreatedWithRepository() public void GetSingleProjectSelected_ProjectSelectedAndRepositoryPassed_ReturnsProjectCreatedWithRepository()
{ {
CreateSelectedProjects(); CreateSelectedProjects();
List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService(); List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0]; fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0];
var repository = new FakePackageRepository(); var repository = new FakePackageRepository();
IPackageManagementProject project = selectedProjects.GetActiveProject(repository); IPackageManagementProject project = selectedProjects.GetSingleProjectSelected(repository);
Assert.AreEqual(repository, fakeSolution.RepositoryPassedToGetActiveProject); Assert.AreEqual(repository, fakeSolution.RepositoryPassedToGetProject);
}
[Test]
public void GetSingleProjectSelected_NoProjectSelectedAndRepositoryPassed_ReturnsProjectCreatedWithRepository()
{
CreateSelectedProjects();
List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0];
var repository = new FakePackageRepository();
IPackageManagementProject project = selectedProjects.GetSingleProjectSelected(repository);
Assert.AreEqual(repository, fakeSolution.RepositoryPassedToGetProject);
} }
[Test] [Test]
@ -454,9 +467,12 @@ namespace PackageManagement.Tests
CreateSelectedProjects(); CreateSelectedProjects();
List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService(); List<IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0]; fakeSolution.FakeActiveMSBuildProject = projectsAddedToSolution[0];
fakeSolution.FakeActiveMSBuildProject.Name = "MyProject";
var package = new FakePackage("Test"); var package = new FakePackage("Test");
fakeSolution.FakeActiveProject.FakePackages.Add(package); var project = new FakePackageManagementProject("MyProject");
project.FakePackages.Add(package);
fakeSolution.FakeProjectsToReturnFromGetProject.Add("MyProject", project);
var repository = new FakePackageRepository(); var repository = new FakePackageRepository();
IQueryable<IPackage> packages = selectedProjects.GetInstalledPackages(repository); IQueryable<IPackage> packages = selectedProjects.GetInstalledPackages(repository);
@ -478,9 +494,22 @@ namespace PackageManagement.Tests
var expectedRepository = new FakePackageRepository(); var expectedRepository = new FakePackageRepository();
IQueryable<IPackage> packages = selectedProjects.GetInstalledPackages(expectedRepository); IQueryable<IPackage> packages = selectedProjects.GetInstalledPackages(expectedRepository);
IPackageRepository repository = fakeSolution.RepositoryPassedToGetActiveProject; IPackageRepository repository = fakeSolution.RepositoryPassedToGetProject;
Assert.AreEqual(expectedRepository, repository); Assert.AreEqual(expectedRepository, repository);
} }
[Test]
public void GetSingleProjectSelected_NoProjectSelected_ReturnsNull()
{
CreateSelectedProjects();
AddSolutionWithTwoProjectsToProjectService();
NoProjectsSelected();
var repository = new FakePackageRepository();
IPackageManagementProject project = selectedProjects.GetSingleProjectSelected(repository);
Assert.IsNull(project);
}
} }
} }

41
src/AddIns/Misc/PackageManagement/Test/Src/PackageViewModelTests.cs

@ -44,7 +44,7 @@ namespace PackageManagement.Tests
{ {
CreateViewModel(); CreateViewModel();
exceptionThrowingProject = new ExceptionThrowingPackageManagementProject(); exceptionThrowingProject = new ExceptionThrowingPackageManagementProject();
viewModel.FakeSolution.FakeActiveProject = exceptionThrowingProject; viewModel.FakeSolution.FakeProjectToReturnFromGetProject = exceptionThrowingProject;
} }
void CreateViewModel(FakePackageManagementSolution solution) void CreateViewModel(FakePackageManagementSolution solution)
@ -54,8 +54,8 @@ namespace PackageManagement.Tests
this.fakeSolution = solution; this.fakeSolution = solution;
fakePackageManagementEvents = viewModel.FakePackageManagementEvents; fakePackageManagementEvents = viewModel.FakePackageManagementEvents;
fakeLogger = viewModel.FakeLogger; fakeLogger = viewModel.FakeLogger;
fakeInstallPackageAction = solution.FakeActiveProject.FakeInstallPackageAction; fakeInstallPackageAction = solution.FakeProjectToReturnFromGetProject.FakeInstallPackageAction;
fakeUninstallPackageAction = solution.FakeActiveProject.FakeUninstallPackageAction; fakeUninstallPackageAction = solution.FakeProjectToReturnFromGetProject.FakeUninstallPackageAction;
fakeActionRunner = viewModel.FakeActionRunner; fakeActionRunner = viewModel.FakeActionRunner;
} }
@ -72,7 +72,7 @@ namespace PackageManagement.Tests
AddProjectToSolution(); AddProjectToSolution();
fakeSolution.FakeMSBuildProjects[0].Name = projectName1; fakeSolution.FakeMSBuildProjects[0].Name = projectName1;
fakeSolution.FakeMSBuildProjects[1].Name = projectName2; fakeSolution.FakeMSBuildProjects[1].Name = projectName2;
fakeSolution.FakeActiveProject = null; fakeSolution.NoProjectsSelected();
fakeSolution.AddFakeProjectToReturnFromGetProject(projectName1); fakeSolution.AddFakeProjectToReturnFromGetProject(projectName1);
fakeSolution.AddFakeProjectToReturnFromGetProject(projectName2); fakeSolution.AddFakeProjectToReturnFromGetProject(projectName2);
@ -153,18 +153,7 @@ namespace PackageManagement.Tests
viewModel.AddPackage(); viewModel.AddPackage();
Assert.AreEqual(fakePackage.Repository, fakeSolution.RepositoryPassedToGetActiveProject); Assert.AreEqual(fakePackage.Repository, fakeSolution.RepositoryPassedToGetProject);
}
[Test]
public void AddPackage_PackageAddedSuccessfully_SourcePackageRepositoryWhenGettingPackageOperations()
{
CreateViewModel();
viewModel.AddOneFakeInstallPackageOperationForViewModelPackage();
viewModel.AddPackage();
Assert.IsFalse(fakeSolution.IsGetActiveProjectWithNoParametersCalled);
} }
[Test] [Test]
@ -278,7 +267,7 @@ namespace PackageManagement.Tests
public void IsAdded_ProjectHasPackageAdded_ReturnsTrue() public void IsAdded_ProjectHasPackageAdded_ReturnsTrue()
{ {
CreateViewModel(); CreateViewModel();
fakeSolution.FakeActiveProject.FakePackages.Add(fakePackage); fakeSolution.FakeProjectToReturnFromGetProject.FakePackages.Add(fakePackage);
Assert.IsTrue(viewModel.IsAdded); Assert.IsTrue(viewModel.IsAdded);
} }
@ -287,7 +276,7 @@ namespace PackageManagement.Tests
public void IsAdded_ProjectDoesNotHavePackageInstalled_ReturnsFalse() public void IsAdded_ProjectDoesNotHavePackageInstalled_ReturnsFalse()
{ {
CreateViewModel(); CreateViewModel();
fakeSolution.FakeActiveProject.FakePackages.Clear(); fakeSolution.FakeProjectToReturnFromGetProject.FakePackages.Clear();
Assert.IsFalse(viewModel.IsAdded); Assert.IsFalse(viewModel.IsAdded);
} }
@ -307,7 +296,7 @@ namespace PackageManagement.Tests
CreateViewModel(); CreateViewModel();
viewModel.RemovePackage(); viewModel.RemovePackage();
Assert.AreEqual(fakePackage.Repository, fakeSolution.RepositoryPassedToGetActiveProject); Assert.AreEqual(fakePackage.Repository, fakeSolution.RepositoryPassedToGetProject);
} }
[Test] [Test]
@ -500,7 +489,7 @@ namespace PackageManagement.Tests
viewModel.AddPackage(); viewModel.AddPackage();
ILogger expectedLogger = viewModel.OperationLoggerCreated; ILogger expectedLogger = viewModel.OperationLoggerCreated;
ILogger actualLogger = fakeSolution.FakeActiveProject.Logger; ILogger actualLogger = fakeSolution.FakeProjectToReturnFromGetProject.Logger;
Assert.AreEqual(expectedLogger, actualLogger); Assert.AreEqual(expectedLogger, actualLogger);
} }
@ -663,7 +652,7 @@ namespace PackageManagement.Tests
viewModel.AddOneFakeInstallPackageOperationForViewModelPackage(); viewModel.AddOneFakeInstallPackageOperationForViewModelPackage();
var exception = new Exception("Test"); var exception = new Exception("Test");
exceptionThrowingSolution.ExceptionToThrowWhenGetActiveProjectCalled = exception; exceptionThrowingSolution.ExceptionToThrowWhenGetProjectCalled = exception;
viewModel.AddPackage(); viewModel.AddPackage();
Assert.AreEqual(exception, fakePackageManagementEvents.ExceptionPassedToOnPackageOperationError); Assert.AreEqual(exception, fakePackageManagementEvents.ExceptionPassedToOnPackageOperationError);
@ -678,7 +667,7 @@ namespace PackageManagement.Tests
FakePackage expectedPackage = fakePackage; FakePackage expectedPackage = fakePackage;
IPackage actualPackage = fakeSolution IPackage actualPackage = fakeSolution
.FakeActiveProject .FakeProjectToReturnFromGetProject
.PackagePassedToGetInstallPackageOperations; .PackagePassedToGetInstallPackageOperations;
Assert.AreEqual(expectedPackage, actualPackage); Assert.AreEqual(expectedPackage, actualPackage);
@ -692,7 +681,7 @@ namespace PackageManagement.Tests
viewModel.AddPackage(); viewModel.AddPackage();
bool result = fakeSolution bool result = fakeSolution
.FakeActiveProject .FakeProjectToReturnFromGetProject
.IgnoreDependenciesPassedToGetInstallPackageOperations; .IgnoreDependenciesPassedToGetInstallPackageOperations;
Assert.IsFalse(result); Assert.IsFalse(result);
@ -715,7 +704,7 @@ namespace PackageManagement.Tests
{ {
CreateViewModel(); CreateViewModel();
AddProjectToSolution(); AddProjectToSolution();
fakeSolution.FakeActiveProject = null; fakeSolution.NoProjectsSelected();
fakeSolution.FakeInstalledPackages.Add(fakePackage); fakeSolution.FakeInstalledPackages.Add(fakePackage);
bool added = viewModel.IsAdded; bool added = viewModel.IsAdded;
@ -728,7 +717,7 @@ namespace PackageManagement.Tests
{ {
CreateViewModel(); CreateViewModel();
AddProjectToSolution(); AddProjectToSolution();
fakeSolution.FakeActiveProject = null; fakeSolution.NoProjectsSelected();
bool added = viewModel.IsAdded; bool added = viewModel.IsAdded;
@ -741,7 +730,7 @@ namespace PackageManagement.Tests
CreateViewModel(); CreateViewModel();
AddProjectToSolution(); AddProjectToSolution();
AddProjectToSolution(); AddProjectToSolution();
fakeSolution.FakeActiveProject = null; fakeSolution.NoProjectsSelected();
bool managed = viewModel.IsManaged; bool managed = viewModel.IsManaged;

4
src/AddIns/Misc/PackageManagement/Test/Src/UpdatedPackageViewModelTests.cs

@ -23,7 +23,7 @@ namespace PackageManagement.Tests
{ {
viewModel = new TestableUpdatedPackageViewModel(); viewModel = new TestableUpdatedPackageViewModel();
fakeSolution = viewModel.FakeSolution; fakeSolution = viewModel.FakeSolution;
fakeProject = fakeSolution.FakeActiveProject; fakeProject = fakeSolution.FakeProjectToReturnFromGetProject;
updatePackageAction = fakeProject.FakeUpdatePackageAction; updatePackageAction = fakeProject.FakeUpdatePackageAction;
fakeActionRunner = viewModel.FakeActionRunner; fakeActionRunner = viewModel.FakeActionRunner;
} }
@ -34,7 +34,7 @@ namespace PackageManagement.Tests
CreateViewModel(); CreateViewModel();
viewModel.AddPackage(); viewModel.AddPackage();
Assert.AreEqual(viewModel.FakePackage.Repository, fakeSolution.RepositoryPassedToGetActiveProject); Assert.AreEqual(viewModel.FakePackage.Repository, fakeSolution.RepositoryPassedToGetProject);
} }
[Test] [Test]

6
src/AddIns/Misc/PackageManagement/Test/Src/UpdatedPackagesViewModelTests.cs

@ -61,7 +61,7 @@ namespace PackageManagement.Tests
FakePackage AddPackageToLocalRepository(string version) FakePackage AddPackageToLocalRepository(string version)
{ {
FakePackage package = FakePackage.CreatePackageWithVersion(version); FakePackage package = FakePackage.CreatePackageWithVersion(version);
solution.AddPackageToActiveProjectLocalRepository(package); solution.FakeProjectToReturnFromGetProject.FakePackages.Add(package);
return package; return package;
} }
@ -128,10 +128,10 @@ namespace PackageManagement.Tests
} }
[Test] [Test]
public void ReadPackages_GetActiveProjectThrowsException_ErrorMessageFromExceptionNotOverriddenByReadPackagesCall() public void ReadPackages_GetProjectThrowsException_ErrorMessageFromExceptionNotOverriddenByReadPackagesCall()
{ {
CreateExceptionThrowingSolution(); CreateExceptionThrowingSolution();
exceptionThrowingSolution.ExceptionToThrowWhenGetActiveProjectCalled = exceptionThrowingSolution.ExceptionToThrowWhenGetProjectCalled =
new Exception("Test"); new Exception("Test");
CreateViewModel(exceptionThrowingSolution); CreateViewModel(exceptionThrowingSolution);
viewModel.ReadPackages(); viewModel.ReadPackages();

Loading…
Cancel
Save