diff --git a/FunctionsSdkE2ETests.sln b/FunctionsSdkE2ETests.sln index b9ecae4..98c0e7e 100644 --- a/FunctionsSdkE2ETests.sln +++ b/FunctionsSdkE2ETests.sln @@ -1,118 +1,125 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.28803.352 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionsSdkE2ETests", "FunctionsSdkE2ETests\FunctionsSdkE2ETests.csproj", "{A980D42F-48BA-4052-BAB2-0032A6B7516F}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "TestProjects", "TestProjects", "{41E8547B-A497-4C51-B648-80DC7FE9A681}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V1", "V1\V1\V1.csproj", "{19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V2", "V2\V2\V2.csproj", "{BF57F8EA-39DA-4C55-A97B-97491C721675}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V3", "V3\V3\V3.csproj", "{1E490BED-97C2-4FE4-9C85-6837FB5C36A0}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DirectRefEMG", "DirectRef\DirectRefEMG\DirectRefEMG.csproj", "{1A5C26E1-09F5-451D-A137-0E65CA38F85C}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{E3EBA50C-BF05-48FB-8D68-555079B759D0}" - ProjectSection(SolutionItems) = preProject - SdkVersion.props = SdkVersion.props - EndProjectSection -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NoSdkRef", "NoSdkRef\NoSdkRef.csproj", "{BD963FE0-0F9E-4480-AA2D-A1F9C8089327}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetStandard20", "FrameworkVersions\NetStandard20\NetStandard20.csproj", "{3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore22", "FrameworkVersions\NetCore22\NetCore22.csproj", "{A241592C-7588-412E-B3C6-A7F2030B7DD1}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore21", "FrameworkVersions\NetCore21\NetCore21.csproj", "{CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore20", "FrameworkVersions\NetCore20\NetCore20.csproj", "{1CF94808-7929-4481-9E39-63C76420FD07}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RefNotFound", "Razor\RefNotFound\RefNotFound.csproj", "{41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mvc", "Razor\Mvc\Mvc.csproj", "{5E5F7AFE-8CD7-4E20-B805-212A4A83F456}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SharedStartup", "SharedStartup\SharedStartup.csproj", "{36AFB021-DBBD-447D-A6FA-78FB3023D191}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Release|Any CPU.Build.0 = Release|Any CPU - {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Debug|Any CPU.Build.0 = Debug|Any CPU - {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Release|Any CPU.ActiveCfg = Release|Any CPU - {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Release|Any CPU.Build.0 = Release|Any CPU - {BF57F8EA-39DA-4C55-A97B-97491C721675}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BF57F8EA-39DA-4C55-A97B-97491C721675}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BF57F8EA-39DA-4C55-A97B-97491C721675}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BF57F8EA-39DA-4C55-A97B-97491C721675}.Release|Any CPU.Build.0 = Release|Any CPU - {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Release|Any CPU.Build.0 = Release|Any CPU - {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Release|Any CPU.Build.0 = Release|Any CPU - {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Release|Any CPU.Build.0 = Release|Any CPU - {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Release|Any CPU.Build.0 = Release|Any CPU - {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Release|Any CPU.Build.0 = Release|Any CPU - {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Release|Any CPU.Build.0 = Release|Any CPU - {1CF94808-7929-4481-9E39-63C76420FD07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1CF94808-7929-4481-9E39-63C76420FD07}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1CF94808-7929-4481-9E39-63C76420FD07}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1CF94808-7929-4481-9E39-63C76420FD07}.Release|Any CPU.Build.0 = Release|Any CPU - {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Release|Any CPU.Build.0 = Release|Any CPU - {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Release|Any CPU.Build.0 = Release|Any CPU - {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Debug|Any CPU.Build.0 = Debug|Any CPU - {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Release|Any CPU.ActiveCfg = Release|Any CPU - {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {BF57F8EA-39DA-4C55-A97B-97491C721675} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {1E490BED-97C2-4FE4-9C85-6837FB5C36A0} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {1A5C26E1-09F5-451D-A137-0E65CA38F85C} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {BD963FE0-0F9E-4480-AA2D-A1F9C8089327} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {A241592C-7588-412E-B3C6-A7F2030B7DD1} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {1CF94808-7929-4481-9E39-63C76420FD07} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {5E5F7AFE-8CD7-4E20-B805-212A4A83F456} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - {36AFB021-DBBD-447D-A6FA-78FB3023D191} = {41E8547B-A497-4C51-B648-80DC7FE9A681} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {E0021489-706A-4A64-98FA-2D1DFE28695E} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.28803.352 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionsSdkE2ETests", "FunctionsSdkE2ETests\FunctionsSdkE2ETests.csproj", "{A980D42F-48BA-4052-BAB2-0032A6B7516F}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "TestProjects", "TestProjects", "{41E8547B-A497-4C51-B648-80DC7FE9A681}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V1", "V1\V1\V1.csproj", "{19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V2", "V2\V2\V2.csproj", "{BF57F8EA-39DA-4C55-A97B-97491C721675}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "V3", "V3\V3\V3.csproj", "{1E490BED-97C2-4FE4-9C85-6837FB5C36A0}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DirectRefEMG", "DirectRef\DirectRefEMG\DirectRefEMG.csproj", "{1A5C26E1-09F5-451D-A137-0E65CA38F85C}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{E3EBA50C-BF05-48FB-8D68-555079B759D0}" + ProjectSection(SolutionItems) = preProject + SdkVersion.props = SdkVersion.props + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NoSdkRef", "NoSdkRef\NoSdkRef.csproj", "{BD963FE0-0F9E-4480-AA2D-A1F9C8089327}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetStandard20", "FrameworkVersions\NetStandard20\NetStandard20.csproj", "{3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore22", "FrameworkVersions\NetCore22\NetCore22.csproj", "{A241592C-7588-412E-B3C6-A7F2030B7DD1}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore21", "FrameworkVersions\NetCore21\NetCore21.csproj", "{CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NetCore20", "FrameworkVersions\NetCore20\NetCore20.csproj", "{1CF94808-7929-4481-9E39-63C76420FD07}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RefNotFound", "Razor\RefNotFound\RefNotFound.csproj", "{41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mvc", "Razor\Mvc\Mvc.csproj", "{5E5F7AFE-8CD7-4E20-B805-212A4A83F456}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SharedStartup", "SharedStartup\SharedStartup.csproj", "{36AFB021-DBBD-447D-A6FA-78FB3023D191}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PreservedDependencies", "PreservedDependencies\PreservedDependencies.csproj", "{C61318C1-D908-42AE-9BBD-BC8A2D62F97C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A980D42F-48BA-4052-BAB2-0032A6B7516F}.Release|Any CPU.Build.0 = Release|Any CPU + {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Debug|Any CPU.Build.0 = Debug|Any CPU + {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Release|Any CPU.ActiveCfg = Release|Any CPU + {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67}.Release|Any CPU.Build.0 = Release|Any CPU + {BF57F8EA-39DA-4C55-A97B-97491C721675}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BF57F8EA-39DA-4C55-A97B-97491C721675}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BF57F8EA-39DA-4C55-A97B-97491C721675}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BF57F8EA-39DA-4C55-A97B-97491C721675}.Release|Any CPU.Build.0 = Release|Any CPU + {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1E490BED-97C2-4FE4-9C85-6837FB5C36A0}.Release|Any CPU.Build.0 = Release|Any CPU + {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1A5C26E1-09F5-451D-A137-0E65CA38F85C}.Release|Any CPU.Build.0 = Release|Any CPU + {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BD963FE0-0F9E-4480-AA2D-A1F9C8089327}.Release|Any CPU.Build.0 = Release|Any CPU + {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A}.Release|Any CPU.Build.0 = Release|Any CPU + {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A241592C-7588-412E-B3C6-A7F2030B7DD1}.Release|Any CPU.Build.0 = Release|Any CPU + {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0}.Release|Any CPU.Build.0 = Release|Any CPU + {1CF94808-7929-4481-9E39-63C76420FD07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1CF94808-7929-4481-9E39-63C76420FD07}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1CF94808-7929-4481-9E39-63C76420FD07}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1CF94808-7929-4481-9E39-63C76420FD07}.Release|Any CPU.Build.0 = Release|Any CPU + {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3}.Release|Any CPU.Build.0 = Release|Any CPU + {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5E5F7AFE-8CD7-4E20-B805-212A4A83F456}.Release|Any CPU.Build.0 = Release|Any CPU + {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Debug|Any CPU.Build.0 = Debug|Any CPU + {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Release|Any CPU.ActiveCfg = Release|Any CPU + {36AFB021-DBBD-447D-A6FA-78FB3023D191}.Release|Any CPU.Build.0 = Release|Any CPU + {C61318C1-D908-42AE-9BBD-BC8A2D62F97C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C61318C1-D908-42AE-9BBD-BC8A2D62F97C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C61318C1-D908-42AE-9BBD-BC8A2D62F97C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C61318C1-D908-42AE-9BBD-BC8A2D62F97C}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {19E43C47-1BA0-46BD-89EA-B4A00EC2ED67} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {BF57F8EA-39DA-4C55-A97B-97491C721675} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {1E490BED-97C2-4FE4-9C85-6837FB5C36A0} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {1A5C26E1-09F5-451D-A137-0E65CA38F85C} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {BD963FE0-0F9E-4480-AA2D-A1F9C8089327} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {3CB90F43-4365-46DA-BEF1-2A9F9DD7429A} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {A241592C-7588-412E-B3C6-A7F2030B7DD1} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {CCB7DEE8-B1F8-47FF-ABAC-719BA7626AF0} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {1CF94808-7929-4481-9E39-63C76420FD07} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {41E58322-B3F0-4B2D-8B7A-0626BCEBEDA3} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {5E5F7AFE-8CD7-4E20-B805-212A4A83F456} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {36AFB021-DBBD-447D-A6FA-78FB3023D191} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + {C61318C1-D908-42AE-9BBD-BC8A2D62F97C} = {41E8547B-A497-4C51-B648-80DC7FE9A681} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {E0021489-706A-4A64-98FA-2D1DFE28695E} + EndGlobalSection +EndGlobal diff --git a/FunctionsSdkE2ETests/E2ETests.cs b/FunctionsSdkE2ETests/E2ETests.cs index c6c9885..4525229 100644 --- a/FunctionsSdkE2ETests/E2ETests.cs +++ b/FunctionsSdkE2ETests/E2ETests.cs @@ -93,6 +93,70 @@ public void Publish_DirectRef() ValidateSharedStartupExtension); } + [Fact] + 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", "netcoreapp3.1", "bin" }; + string cleanedOutputDir = Path.Combine(expectedCleanedOutputPath); + List preservedFiles = new List() { "Microsoft.Azure.WebJobs.dll", "Microsoft.Azure.WebJobs.Host.dll" }; + List cleanedFiles = new List() { "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))); + } + } + + [Fact] + 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} /bl"); + + ValidateExtensionsJsonRecursive(publishDir, 1, expectedFolder: _expectedBinFolder, ValidateSharedStartupExtension); + + string cleanedOutputDir = Path.Combine(publishDir, "bin"); + List preservedFiles = new List() { "Microsoft.Azure.WebJobs.dll", "Microsoft.Azure.WebJobs.Host.dll" }; + List cleanedFiles = new List() { "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))); + } + } + [Fact] public void Build_DifferentFrameworks() { diff --git a/PreservedDependencies.sln b/PreservedDependencies.sln new file mode 100644 index 0000000..201efd5 --- /dev/null +++ b/PreservedDependencies.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30611.23 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PreservedDependencies", "PreservedDependencies\PreservedDependencies.csproj", "{FF7D2243-8660-4961-A68F-09B09DF9A549}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SharedStartup", "SharedStartup\SharedStartup.csproj", "{196A4BB6-8FF2-44C9-BF31-D3517140FD3A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {FF7D2243-8660-4961-A68F-09B09DF9A549}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FF7D2243-8660-4961-A68F-09B09DF9A549}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FF7D2243-8660-4961-A68F-09B09DF9A549}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FF7D2243-8660-4961-A68F-09B09DF9A549}.Release|Any CPU.Build.0 = Release|Any CPU + {196A4BB6-8FF2-44C9-BF31-D3517140FD3A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {196A4BB6-8FF2-44C9-BF31-D3517140FD3A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {196A4BB6-8FF2-44C9-BF31-D3517140FD3A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {196A4BB6-8FF2-44C9-BF31-D3517140FD3A}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {54BD5AE1-6A12-4857-A500-5A8E3AA3235C} + EndGlobalSection +EndGlobal diff --git a/PreservedDependencies/Function1.cs b/PreservedDependencies/Function1.cs new file mode 100644 index 0000000..4ca3d79 --- /dev/null +++ b/PreservedDependencies/Function1.cs @@ -0,0 +1,35 @@ +using System; +using System.IO; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Azure.WebJobs; +using Microsoft.Azure.WebJobs.Extensions.Http; +using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Logging; +using Newtonsoft.Json; + +namespace PreservedDependencies +{ + public static class Function1 + { + [FunctionName("Function1")] + public static async Task Run( + [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, + ILogger log) + { + log.LogInformation("C# HTTP trigger function processed a request."); + + string name = req.Query["name"]; + + string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); + dynamic data = JsonConvert.DeserializeObject(requestBody); + name = name ?? data?.name; + + string responseMessage = string.IsNullOrEmpty(name) + ? "This HTTP triggered function executed successfully. Pass a name in the query string or in the request body for a personalized response." + : $"Hello, {name}. This HTTP triggered function executed successfully."; + + return new OkObjectResult(responseMessage); + } + } +} diff --git a/PreservedDependencies/PreservedDependencies.csproj b/PreservedDependencies/PreservedDependencies.csproj new file mode 100644 index 0000000..6a49c82 --- /dev/null +++ b/PreservedDependencies/PreservedDependencies.csproj @@ -0,0 +1,27 @@ + + + + netcoreapp3.1 + v3 + + + + + + + + + + + + + + + PreserveNewest + + + PreserveNewest + Never + + + diff --git a/PreservedDependencies/host.json b/PreservedDependencies/host.json new file mode 100644 index 0000000..2685784 --- /dev/null +++ b/PreservedDependencies/host.json @@ -0,0 +1,11 @@ +{ + "version": "2.0", + "logging": { + "applicationInsights": { + "samplingExcludedTypes": "Request", + "samplingSettings": { + "isEnabled": true + } + } + } +} \ No newline at end of file diff --git a/PreservedDependencies/local.settings.json b/PreservedDependencies/local.settings.json new file mode 100644 index 0000000..2bff7e6 --- /dev/null +++ b/PreservedDependencies/local.settings.json @@ -0,0 +1,7 @@ +{ + "IsEncrypted": false, + "Values": { + "AzureWebJobsStorage": "UseDevelopmentStorage=true", + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + } +} \ No newline at end of file