public RuntimeDependencyResolver(ScriptProjectProvider scriptProjectProvider, LogFactory logFactory, ScriptEnvironment scriptEnvironment, bool useRestoreCache) { _scriptProjectProvider = scriptProjectProvider; _scriptEnvironment = scriptEnvironment; _dependencyContextReader = new ScriptDependencyContextReader(logFactory); _restorer = CreateRestorer(logFactory, useRestoreCache); }
public CompilationDependencyResolver(ScriptProjectProvider scriptProjectProvider, ScriptDependencyContextReader scriptDependencyContextReader, ICompilationReferenceReader compilationReferenceReader, LogFactory logFactory) { _scriptProjectProvider = scriptProjectProvider; this._scriptDependencyContextReader = scriptDependencyContextReader; _compilationReferenceReader = compilationReferenceReader; _restorer = CreateRestorer(logFactory); }
public void ShouldThrowMeaningfulExceptionWhenPassingAnInvalidAssetsFile() { var pathToAssetsFile = Path.Combine(Path.GetTempPath(), "project.assets.json"); var dependencyResolver = new ScriptDependencyContextReader(TestOutputHelper.CreateTestLogFactory()); var exception = Assert.Throws <InvalidOperationException>(() => dependencyResolver.ReadDependencyContext(pathToAssetsFile)); Assert.Contains("Make sure that the file exists and that it is a valid 'project.assets.json' file.", exception.Message); }
public void ShouldThrowMeaningfulExceptionWhenRuntimeTargetIsMissing() { using (var projectFolder = new DisposableFolder()) { ProcessHelper.RunAndCaptureOutput("dotnet", "new console -n SampleLibrary", projectFolder.Path); ProcessHelper.RunAndCaptureOutput("dotnet", "restore", projectFolder.Path); var pathToAssetsFile = Path.Combine(projectFolder.Path, "SampleLibrary", "obj", "project.assets.json"); var dependencyResolver = new ScriptDependencyContextReader(TestOutputHelper.CreateTestLogFactory()); var exception = Assert.Throws <InvalidOperationException>(() => dependencyResolver.ReadDependencyContext(pathToAssetsFile)); Assert.Contains("Make sure that the project file was restored using a RID (runtime identifier).", exception.Message); } }