public void AddPackage_PackageRepositoryIsOperationAwareAndPackageAddedSuccessfully_InstallOperationStartedForPackage ()
		{
			CreateViewModel ();
			var operationAwareRepository = new FakeOperationAwarePackageRepository ();
			fakePackage.FakePackageRepository = operationAwareRepository;
			fakePackage.Id = "MyPackage";

			viewModel.AddPackage ();

			operationAwareRepository.AssertOperationWasStartedAndDisposed (RepositoryOperationNames.Install, "MyPackage");
		}
		public void ManagePackage_TwoProjectsNeitherSelectedAndSourceRepositoryIsOperationAware_InstallOperationStarted ()
		{
			CreateViewModelWithTwoProjectsSelected ("Project A", "Project B");
			UserAcceptsProjectSelection ();
			var operationAwareRepository = new FakeOperationAwarePackageRepository ();
			fakePackage.FakePackageRepository = operationAwareRepository;
			fakePackage.Id = "MyPackage";

			viewModel.ManagePackage ();

			operationAwareRepository.AssertOperationWasStartedAndDisposed (RepositoryOperationNames.Install, "MyPackage");
		}
		FakeOperationAwarePackageRepository MakePriorityRepositoryOperationAware ()
		{
			var repository = new FakeOperationAwarePackageRepository ();
			packageRepositoryCache.FakePriorityPackageRepository = repository;
			return repository;
		}