public void Build_PreservedDependencies()

in FunctionsSdkE2ETests/FunctionsSdkE2ETests/E2ETests.cs [95:122]


        public void Build_PreservedDependencies()
        {
            string solutionName = "PreservedDependencies";
            string solutionFile = solutionName + ".sln";
            string workingDir = FindContainingDirectory(solutionFile);
            string projectDir = Path.Combine(workingDir, solutionName);

            RunDotNet("restore", workingDir, solutionFile);
            RunDotNet("clean", workingDir, solutionFile);
            RunDotNet("build", workingDir, solutionFile);

            ValidateExtensionsJsonRecursive(projectDir, 1, expectedFolder: _expectedBinFolder, ValidateSharedStartupExtension);

            string[] expectedCleanedOutputPath = new string[] { projectDir, "bin", "Debug", "net6.0", "bin" };
            string cleanedOutputDir = Path.Combine(expectedCleanedOutputPath);
            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)));
            }
        }