void CreateProject(MSBuildBasedProject msbuildProject)
		{
			fakePackageManagerFactory = new FakePackageManagerFactory();
			fakePackageManager = fakePackageManagerFactory.FakePackageManager;
			fakeProjectManager = fakePackageManager.FakeProjectManager;
			fakeSourceRepository = new FakePackageRepository();
			fakePackageManagementEvents = new FakePackageManagementEvents();
			
			project = new PackageManagementProject(
				fakeSourceRepository,
				msbuildProject,
				fakePackageManagementEvents,
				fakePackageManagerFactory);
		}
		public void InstalledPackagesViewModel_ProjectHasOneInstalledPackage_HasOnePackageViewModel()
		{
			CreatePackageManagementService();
			var projectManager = new FakeProjectManager();
			fakePackageManagementService.FakeActiveProjectManager = projectManager;
			FakePackage package = new FakePackage();
			projectManager.FakeLocalRepository.FakePackages.Add(package);
			CreateViewModel(fakePackageManagementService);
			
			IEnumerable<IPackage> expectedPackages = projectManager.FakeLocalRepository.FakePackages;
			IEnumerable<PackageViewModel> actualPackageViewModels = viewModel.InstalledPackagesViewModel.PackageViewModels;
			
			PackageCollectionAssert.AreEqual(expectedPackages, actualPackageViewModels);
		}
		void CreateProject()
		{
			fakePackageManagerFactory = new FakePackageManagerFactory();
			fakePackageManager = fakePackageManagerFactory.FakePackageManager;
			fakeProjectManager = fakePackageManager.FakeProjectManager;
			fakeSourceRepository = new FakePackageRepository();
			fakeMSBuildProject = ProjectHelper.CreateTestProject();
			fakePackageManagementEvents = new FakePackageManagementEvents();
			
			project = new PackageManagementProject(
				fakeSourceRepository,
				fakeMSBuildProject,
				fakePackageManagementEvents,
				fakePackageManagerFactory);
		}
		public FakePackageManagementService()
		{
			FakeActiveProjectManager = new FakeProjectManager();
			FakeActivePackageRepository = new FakePackageRepository();
			FakeActiveProjectManager.FakeSourceRepository = FakeActivePackageRepository;
		}
 public FakePackageManagementService()
 {
     FakeActiveProjectManager    = new FakeProjectManager();
     FakeActivePackageRepository = new FakePackageRepository();
     FakeActiveProjectManager.FakeSourceRepository = FakeActivePackageRepository;
 }