public void TestUninstallNotInstalledPackage() { var installer = new InstallerLibrary(io, bucket); var packageMock = new Mock <IPackage>(); repository.Setup((o) => o.HasPackage(packageMock.Object)).Returns(false); installer.Uninstall(repository.Object, packageMock.Object); }
public void TestUninstall() { var installer = new InstallerLibrary(io, bucket); var packageMock = new Mock <IPackage>(); packageMock.Setup((o) => o.GetName()).Returns("foo"); packageMock.Setup((o) => o.GetNamePretty()).Returns("foo"); repository.SetupSequence((o) => o.HasPackage(packageMock.Object)) .Returns(true).Returns(false); installer.Uninstall(repository.Object, packageMock.Object); downloadManager.Verify((o) => o.Remove(packageMock.Object, vendorDir + "/foo")); repository.Verify((o) => o.RemovePackage(packageMock.Object)); }
public void TestUninstallDeleteVendorDirIfDirIsEmpty() { var fileSystemMock = new Mock <IFileSystem>(); var installer = new InstallerLibrary(io, bucket, fileSystem: fileSystemMock.Object); var packageMock = new Mock <IPackage>(); repository.Setup((o) => o.HasPackage(packageMock.Object)).Returns(true); packageMock.Setup((o) => o.GetName()).Returns("foo/bar"); var fullVendorDir = Path.GetDirectoryName(installer.GetInstallPath(packageMock.Object)); fileSystemMock.Setup((o) => o.Exists(fullVendorDir, FileSystemOptions.Directory)).Returns(true); installer.Uninstall(repository.Object, packageMock.Object); fileSystemMock.Verify((o) => o.Delete(fullVendorDir)); }