in FunctionsSdkE2ETests/FunctionsSdkE2ETests/E2ETests.cs [125:156]
public void Publish_PreservedDependencies()
{
string publishDir = Path.Combine(Path.GetTempPath(), "FunctionsSdkTests", "pub_preservedDeps");
if (Directory.Exists(publishDir))
{
Directory.Delete(publishDir, true);
}
string solutionName = "PreservedDependencies";
string solutionFile = solutionName + ".sln";
string workingDir = FindContainingDirectory(solutionFile);
RunDotNet("restore", workingDir, solutionFile);
RunDotNet("clean", workingDir, solutionFile);
RunDotNet("publish", workingDir, solutionFile, $"-o {publishDir}");
ValidateExtensionsJsonRecursive(publishDir, 1, expectedFolder: _expectedBinFolder, ValidateSharedStartupExtension);
string cleanedOutputDir = Path.Combine(publishDir, "bin");
List<string> preservedFiles = new List<string>() { "Microsoft.Azure.WebJobs.dll", "Microsoft.Azure.WebJobs.Host.dll" };
List<string> cleanedFiles = new List<string>() { "Microsoft.Net.Http.Headers.dll", "Microsoft.Azure.WebJobs.Extensions.Http.dll" };
foreach (var preservedFile in preservedFiles)
{
Assert.True(File.Exists(Path.Combine(cleanedOutputDir, preservedFile)));
}
foreach (var cleanedFile in cleanedFiles)
{
Assert.False(File.Exists(Path.Combine(cleanedOutputDir, cleanedFile)));
}
}