public NuGetLoadDirectiveProviderFixtureResult Load() { var provider = new NuGetLoadDirectiveProvider(Environment, Installer, Configuration, Log); var result = new NuGetLoadDirectiveProviderFixtureResult(); // Setup the files that should be installed. Installer.Install(Arg.Any <PackageReference>(), PackageType.Tool, Arg.Any <DirectoryPath>()) .Returns(info => { var files = new List <IFile>(); foreach (var path in InstallResult) { var file = Substitute.For <IFile>(); file.Path.Returns(path); files.Add(file); } return(files); }); // Capture install parameters. Installer.When(i => i.Install(Arg.Any <PackageReference>(), Arg.Any <PackageType>(), Arg.Any <DirectoryPath>())) .Do(info => { result.Package = info.Arg <PackageReference>(); result.PackageType = info.Arg <PackageType>(); result.InstallPath = info.Arg <DirectoryPath>(); }); // Capture analysis results. Context?.When(c => c.Analyze(Arg.Any <FilePath>())) .Do(info => result.AnalyzedFiles.Add(info.Arg <FilePath>())); // Load the reference. provider.Load(Context, Reference); // Return the result. return(result); }
public bool CanLoad() { var provider = new NuGetLoadDirectiveProvider(Environment, Installer, Configuration, Log); return(provider.CanLoad(Context, Reference)); }