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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
 protected override IDisposable CreateOpenPackageReadMeMonitor(string packageId)
 {
     OpenPackageReadMeMonitor = base.CreateOpenPackageReadMeMonitor(packageId) as OpenPackageReadMeMonitor;
     return(OpenPackageReadMeMonitor);
 }