) Setup( bool useMock, List <MockFeed> feeds = null, FilePath?tempProject = null, DirectoryPath?offlineFeed = null, FilePath?writeLocalFeedToNugetConfig = null, [CallerMemberName] string callingMethod = "", string identiifer = null) { var root = new DirectoryPath(_testAssetsManager.CreateTestDirectory(callingMethod, identifier: useMock.ToString() + identiifer).Path); var reporter = new BufferedReporter(); IFileSystem fileSystem; IToolPackageStore store; IToolPackageStoreQuery storeQuery; IToolPackageInstaller installer; IToolPackageUninstaller uninstaller; if (useMock) { fileSystem = new FileSystemMockBuilder().Build(); var frameworksMap = new Dictionary <PackageId, IEnumerable <NuGetFramework> >() { { TestPackageId, TestFrameworks } }; WriteNugetConfigFileToPointToTheFeed(fileSystem, writeLocalFeedToNugetConfig); var toolPackageStoreMock = new ToolPackageStoreMock(root, fileSystem, frameworksMap); store = toolPackageStoreMock; storeQuery = toolPackageStoreMock; installer = new ToolPackageInstallerMock( fileSystem: fileSystem, store: toolPackageStoreMock, projectRestorer: new ProjectRestorerMock( fileSystem: fileSystem, reporter: reporter, feeds: feeds == null ? GetMockFeedsForConfigFile(writeLocalFeedToNugetConfig) : feeds.Concat(GetMockFeedsForConfigFile(writeLocalFeedToNugetConfig)).ToList()), frameworksMap: frameworksMap); uninstaller = new ToolPackageUninstallerMock(fileSystem, toolPackageStoreMock); } else { fileSystem = new FileSystemWrapper(); WriteNugetConfigFileToPointToTheFeed(fileSystem, writeLocalFeedToNugetConfig); var toolPackageStore = new ToolPackageStoreAndQuery(root); store = toolPackageStore; storeQuery = toolPackageStore; installer = new ToolPackageInstaller( store: store, projectRestorer: new Stage2ProjectRestorer(Log, reporter), tempProject: tempProject ?? GetUniqueTempProjectPathEachTest(), offlineFeed: offlineFeed ?? new DirectoryPath("does not exist")); uninstaller = new ToolPackageUninstaller(store); } store.Root.Value.Should().Be(Path.GetFullPath(root.Value)); return(store, storeQuery, installer, uninstaller, reporter, fileSystem); }
public static (IToolPackageStore, IToolPackageStoreQuery, IToolPackageUninstaller) CreateToolPackageStoresAndUninstaller( DirectoryPath?nonGlobalLocation = null) { ToolPackageStoreAndQuery toolPackageStore = CreateConcreteToolPackageStore(nonGlobalLocation); var toolPackageUninstaller = new ToolPackageUninstaller( toolPackageStore); return(toolPackageStore, toolPackageStore, toolPackageUninstaller); }
) Setup( bool useMock, List <MockFeed> feeds = null, FilePath?tempProject = null, DirectoryPath?offlineFeed = null, [CallerMemberName] string testName = "", string identifier = null) { var root = new DirectoryPath(_testAssetsManager.CreateTestDirectory(testName, identifier).Path); var reporter = new BufferedReporter(); IFileSystem fileSystem; IToolPackageStore store; IToolPackageStoreQuery storeQuery; IToolPackageInstaller installer; IToolPackageUninstaller uninstaller; if (useMock) { var packagedShimsMap = new Dictionary <PackageId, IReadOnlyList <FilePath> > { [TestPackageId] = new FilePath[] { new FilePath("path/demo.exe") } }; fileSystem = new FileSystemMockBuilder().Build(); var toolPackageStoreMock = new ToolPackageStoreMock(root, fileSystem); store = toolPackageStoreMock; storeQuery = toolPackageStoreMock; installer = new ToolPackageInstallerMock( fileSystem: fileSystem, store: toolPackageStoreMock, projectRestorer: new ProjectRestorerMock( fileSystem: fileSystem, reporter: reporter, feeds: feeds), packagedShimsMap: packagedShimsMap); uninstaller = new ToolPackageUninstallerMock(fileSystem, toolPackageStoreMock); } else { fileSystem = new FileSystemWrapper(); var toolPackageStore = new ToolPackageStoreAndQuery(root); store = toolPackageStore; storeQuery = toolPackageStore; installer = new ToolPackageInstaller( store: store, projectRestorer: new Stage2ProjectRestorer(Log, reporter), tempProject: tempProject ?? GetUniqueTempProjectPathEachTest(), offlineFeed: offlineFeed ?? new DirectoryPath("does not exist")); uninstaller = new ToolPackageUninstaller(store); } store.Root.Value.Should().Be(Path.GetFullPath(root.Value)); return(store, storeQuery, installer, uninstaller, reporter, fileSystem); }
) Setup( bool useMock, IEnumerable <MockFeed> feeds = null, FilePath?tempProject = null, DirectoryPath?offlineFeed = null) { var root = new DirectoryPath(Path.Combine(TempRoot.Root, Path.GetRandomFileName())); var reporter = new BufferedReporter(); IFileSystem fileSystem; IToolPackageStore store; IToolPackageStoreQuery storeQuery; IToolPackageInstaller installer; IToolPackageUninstaller uninstaller; if (useMock) { var packagedShimsMap = new Dictionary <PackageId, IReadOnlyList <FilePath> > { [TestPackageId] = new FilePath[] { new FilePath("path/demo.exe") } }; fileSystem = new FileSystemMockBuilder().Build(); var toolPackageStoreMock = new ToolPackageStoreMock(root, fileSystem); store = toolPackageStoreMock; storeQuery = toolPackageStoreMock; installer = new ToolPackageInstallerMock( fileSystem: fileSystem, store: toolPackageStoreMock, projectRestorer: new ProjectRestorerMock( fileSystem: fileSystem, reporter: reporter, feeds: feeds), packagedShimsMap: packagedShimsMap); uninstaller = new ToolPackageUninstallerMock(fileSystem, toolPackageStoreMock); } else { fileSystem = new FileSystemWrapper(); var toolPackageStore = new ToolPackageStoreAndQuery(root); store = toolPackageStore; storeQuery = toolPackageStore; installer = new ToolPackageInstaller( store: store, projectRestorer: new ProjectRestorer(reporter), tempProject: tempProject ?? GetUniqueTempProjectPathEachTest(), offlineFeed: offlineFeed ?? new DirectoryPath("does not exist")); uninstaller = new ToolPackageUninstaller(store); } store.Root.Value.Should().Be(Path.GetFullPath(root.Value)); return(store, storeQuery, installer, uninstaller, reporter, fileSystem); }
) Setup( bool useMock, List <MockFeed> feeds = null, FilePath?tempProject = null, DirectoryPath?offlineFeed = null, FilePath?writeLocalFeedToNugetConfig = null) { var root = new DirectoryPath(Path.Combine(TempRoot.Root, Path.GetRandomFileName())); var reporter = new BufferedReporter(); IFileSystem fileSystem; IToolPackageStore store; IToolPackageStoreQuery storeQuery; IToolPackageInstaller installer; IToolPackageUninstaller uninstaller; if (useMock) { fileSystem = new FileSystemMockBuilder().Build(); WriteNugetConfigFileToPointToTheFeed(fileSystem, writeLocalFeedToNugetConfig); var toolPackageStoreMock = new ToolPackageStoreMock(root, fileSystem); store = toolPackageStoreMock; storeQuery = toolPackageStoreMock; installer = new ToolPackageInstallerMock( fileSystem: fileSystem, store: toolPackageStoreMock, projectRestorer: new ProjectRestorerMock( fileSystem: fileSystem, reporter: reporter, feeds: feeds == null ? GetMockFeedsForConfigFile(writeLocalFeedToNugetConfig) : feeds.Concat(GetMockFeedsForConfigFile(writeLocalFeedToNugetConfig)).ToList())); uninstaller = new ToolPackageUninstallerMock(fileSystem, toolPackageStoreMock); } else { fileSystem = new FileSystemWrapper(); WriteNugetConfigFileToPointToTheFeed(fileSystem, writeLocalFeedToNugetConfig); var toolPackageStore = new ToolPackageStoreAndQuery(root); store = toolPackageStore; storeQuery = toolPackageStore; installer = new ToolPackageInstaller( store: store, projectRestorer: new ProjectRestorer(reporter), tempProject: tempProject ?? GetUniqueTempProjectPathEachTest(), offlineFeed: offlineFeed ?? new DirectoryPath("does not exist")); uninstaller = new ToolPackageUninstaller(store); } store.Root.Value.Should().Be(Path.GetFullPath(root.Value)); return(store, storeQuery, installer, uninstaller, reporter, fileSystem); }
CreateToolPackageStoresAndInstallerAndUninstaller( DirectoryPath?nonGlobalLocation = null, IEnumerable <string> additionalRestoreArguments = null) { ToolPackageStoreAndQuery toolPackageStore = CreateConcreteToolPackageStore(nonGlobalLocation); var toolPackageInstaller = new ToolPackageInstaller( toolPackageStore, new ProjectRestorer(additionalRestoreArguments: additionalRestoreArguments)); var toolPackageUninstaller = new ToolPackageUninstaller( toolPackageStore); return(toolPackageStore, toolPackageStore, toolPackageInstaller, toolPackageUninstaller); }
CreateToolPackageStoresAndInstallerAndUninstaller( DirectoryPath?nonGlobalLocation = null) { ToolPackageStoreAndQuery toolPackageStore = CreateConcreteToolPackageStore(nonGlobalLocation); var toolPackageInstaller = new ToolPackageInstaller( toolPackageStore, new ProjectRestorer()); var toolPackageUninstaller = new ToolPackageUninstaller( toolPackageStore); return(toolPackageStore, toolPackageStore, toolPackageInstaller, toolPackageUninstaller); }