public void Execute_PackageWithReadmeTxtIsInstalledButExceptionThrownWhenAddingPackageToProject_ReadmeFileIsNotOpened() { CreateSolution(); updatePackageHelper.TestPackage.Id = "Test"; updatePackageHelper.TestPackage.AddFile("readme.txt"); OpenPackageReadMeMonitor monitor = null; action.CreateOpenPackageReadMeMonitorAction = packageId => { monitor = CreateReadMeMonitor(packageId) as OpenPackageReadMeMonitor; return(monitor); }; string installPath = @"d:\projects\myproject\packages\Test.1.0"; string readmeFileName = Path.Combine(installPath, "readme.txt"); fakeProject.UpdatePackageAction = (package, updateAction) => { var eventArgs = new PackageOperationEventArgs(package, null, installPath); fakeProject.FirePackageInstalledEvent(eventArgs); fileService.ExistingFileNames.Add(readmeFileName); throw new ApplicationException(); }; Assert.Throws <ApplicationException>(() => { updatePackageHelper.UpdateTestPackage(); }); Assert.IsFalse(fileService.IsOpenFileCalled); Assert.IsTrue(monitor.IsDisposed); }
public void Dispose_PackageInstalledWithReadmeTxtButOpenReadMeFileMethodIsNotCalled_ReadmeTxtIsNotOpened() { const string installPath = @"d:\projects\myproject\packages\Test.1.2.0"; string expectedFileOpened = Path.Combine(installPath, "readme.txt"); using (OpenPackageReadMeMonitor monitor = CreateMonitor("Test")) { fileService.ExistingFileNames.Add(expectedFileOpened); FakePackage package = CreatePackageWithFile("Test", "readme.txt"); PackageOperationEventArgs e = CreatePackageInstallEventWithFile(installPath, package); project.FirePackageInstalledEvent(e); } Assert.IsFalse(fileService.IsOpenFileCalled); }
public void OpenReadMeFile_PackageInstalledWithReadmeTxtButFileDoesNotExistOnFileSystem_ReadmeTxtIsNotOpened() { const string installPath = @"d:\projects\myproject\packages\Test.1.2.0"; string readmeFileName = Path.Combine(installPath, "readme.txt"); using (OpenPackageReadMeMonitor monitor = CreateMonitor("Test")) { FakePackage package = CreatePackageWithFile("Test", "readme.txt"); PackageOperationEventArgs e = CreatePackageInstallEventWithFile(installPath, package); project.FirePackageInstalledEvent(e); monitor.OpenReadMeFile(); } Assert.IsFalse(fileService.IsOpenFileCalled); }
public void OpenReadMeFile_PackageInstalledWithReadmeTxt_ReadmeTxtIsOpened() { const string installPath = @"d:\projects\myproject\packages\Test.1.2.0"; string expectedFileOpened = Path.Combine(installPath, "readme.txt"); using (OpenPackageReadMeMonitor monitor = CreateMonitor("Test")) { fileService.ExistingFileNames.Add(expectedFileOpened); FakePackage package = CreatePackageWithFile("Test", "readme.txt"); PackageOperationEventArgs e = CreatePackageInstallEventWithFile(installPath, package); project.FirePackageInstalledEvent(e); monitor.OpenReadMeFile(); } Assert.AreEqual(expectedFileOpened, fileService.FileNamePassedToOpenFile); }
public void Constructor_PackageDependencyIsInstalledWithReadmeTxt_ReadmeTxtIsNotOpenedUntilOpenReadMeFileMethodIsCalled() { const string installPath = @"d:\projects\myproject\packages\Test.1.2.0"; string expectedFileOpened = Path.Combine(installPath, "ReadMe.TXT"); OpenPackageReadMeMonitor monitor = CreateMonitor("Test"); fileService.ExistingFileNames.Add(expectedFileOpened); FakePackage package = CreatePackageWithFile("Test", "ReadMe.TXT"); PackageOperationEventArgs e = CreatePackageInstallEventWithFile(installPath, package); project.FirePackageInstalledEvent(e); Assert.IsFalse(fileService.IsOpenFileCalled); }
protected override IDisposable CreateOpenPackageReadMeMonitor(string packageId) { OpenPackageReadMeMonitor = base.CreateOpenPackageReadMeMonitor(packageId) as OpenPackageReadMeMonitor; return(OpenPackageReadMeMonitor); }