void CreateViewModel(FakeRegisteredPackageRepositories registeredPackageRepositories)
		{
			this.registeredPackageRepositories = registeredPackageRepositories;
			taskFactory = new FakeTaskFactory();
			var packageViewModelFactory = new FakePackageViewModelFactory();
			packageManagementEvents = new PackageManagementEvents();
			viewModel = new TestableRecentPackagesViewModel(
				new FakePackageManagementSolution(),
				packageManagementEvents,
				registeredPackageRepositories,
				packageViewModelFactory,
				taskFactory);
		}
        void CreateViewModel(FakeRegisteredPackageRepositories registeredPackageRepositories)
        {
            this.registeredPackageRepositories = registeredPackageRepositories;
            taskFactory = new FakeTaskFactory();
            var packageViewModelFactory = new FakePackageViewModelFactory();

            packageManagementEvents = new PackageManagementEvents();
            viewModel = new TestableRecentPackagesViewModel(
                new FakePackageManagementSolution(),
                packageManagementEvents,
                registeredPackageRepositories,
                packageViewModelFactory,
                taskFactory);
        }
		public TestablePackagesViewModels(
			IPackageManagementSolution solution,
			IRegisteredPackageRepositories registeredPackageRepositories,
			IThreadSafePackageManagementEvents packageManagementEvents,
			IPackageActionRunner actionRunner,
			ITaskFactory taskFactory) : base()
		{
			var packageViewModelFactory = new PackageViewModelFactory(solution, packageManagementEvents, actionRunner);
			var updatedPackageViewModelFactory = new UpdatedPackageViewModelFactory(packageViewModelFactory);
			
			AvailablePackagesViewModel = new TestableAvailablePackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
			InstalledPackagesViewModel = new InstalledPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
			UpdatedPackagesViewModel = new UpdatedPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, updatedPackageViewModelFactory, taskFactory);
			RecentPackagesViewModel = new TestableRecentPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
		}