-
Notifications
You must be signed in to change notification settings - Fork 321
DRAFT | Wire Manual Tests to Common MDS #3916
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
ae6bc0a
322464b
a0ac0bf
e84c1e0
9a83c89
79c8b01
6eb12b8
83ef7f8
ff0644a
b60645f
40447c5
71fbcd1
11c860b
b944ff0
6b5a367
0fefd7a
14c8d6f
d677cb1
eff7d84
ce6acb9
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -78,19 +78,8 @@ | |
| <FunctionalTests Include="**/FunctionalTests/Microsoft.Data.SqlClient.FunctionalTests.csproj" /> | ||
| <FunctionalTestsProj Include="**/FunctionalTests/Microsoft.Data.SqlClient.FunctionalTests.csproj" /> | ||
|
|
||
| <ManualTests Include="**/Common/Common.csproj" /> | ||
| <ManualTests Include="**/ManualTests/SQL/UdtTest/UDTs/Address/Address.csproj" /> | ||
| <ManualTests Include="**/ManualTests/SQL/UdtTest/UDTs/Circle/Circle.csproj" /> | ||
| <ManualTests Include="**/ManualTests/SQL/UdtTest/UDTs/Shapes/Shapes.csproj" /> | ||
| <ManualTests Include="**/ManualTests/SQL/UdtTest/UDTs/Utf8String/Utf8String.csproj" /> | ||
| <ManualTests Include="**/tools/Microsoft.Data.SqlClient.TestUtilities/Microsoft.Data.SqlClient.TestUtilities.csproj" /> | ||
| <ManualTests Include="**/tools/CoreFx.Private.TestUtilities/CoreFx.Private.TestUtilities.csproj" /> | ||
| <ManualTests Include="**/tools/TDS/TDS/TDS.csproj" /> | ||
| <ManualTests Include="**/tools/TDS/TDS.EndPoint/TDS.EndPoint.csproj" /> | ||
| <ManualTests Include="**/tools/TDS/TDS.Servers/TDS.Servers.csproj" /> | ||
| <ManualTests Include="**/CustomConfigurableRetryLogic/CustomRetryLogicProvider.csproj" /> | ||
| <ManualTests Include="**/ManualTests/Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" /> | ||
| <ManualTestsProj Include="**/ManualTests/Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" /> | ||
| <ManualTests Include="**/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" /> | ||
| <ManualTestsProj Include="**/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" /> | ||
| </ItemGroup> | ||
|
|
||
| <!-- Top Level Build targets --> | ||
|
|
@@ -99,9 +88,12 @@ | |
| <Target Name="BuildAllConfigurations" DependsOnTargets="Restore;BuildTools;BuildSqlServerLib;BuildNetFx;BuildNetCoreAllOS;BuildNetStandard;GenerateMdsPackage" /> | ||
| <Target Name="BuildSqlServerPackage" DependsOnTargets="BuildSqlServerLibAnyOS;GenerateSqlServerPackage"/> | ||
|
|
||
| <!-- @TODO: Manual tests have a reference to AKV provider, and AKV provider is not built on non-windows pipeline runs. Thus it is added to the dependencies of the build tests target. This is not good since it means AKV is built twice on windows and once on unix, in a mix of implicit and explicit. The pipeline should be modified to build it in both cases, or the build should be updated to have dotnet build the test projects. --> | ||
| <Target Name="BuildTestsNetCore" DependsOnTargets="RestoreTestsNetCore;BuildAKVNetCore;BuildManualTestsNetCore"/> | ||
| <Target Name="BuildTestsNetFx" DependsOnTargets="RestoreTestsNetFx;BuildAKVNetFx;BuildManualTestsNetFx" Condition="$(IsEnabledWindows) == 'true'"/> | ||
| <Target Name="BuildTestsNetCore"> | ||
| <Message Text=">>> No op. Will be removed." /> | ||
| </Target> | ||
| <Target Name="BuildTestsNetFx"> | ||
| <Message Text=">>> No op. Will be removed." /> | ||
| </Target> | ||
benrr101 marked this conversation as resolved.
Show resolved
Hide resolved
Comment on lines
+91
to
+96
|
||
|
|
||
| <!-- Other Targets --> | ||
| <Target Name="RestoreSqlServerLib"> | ||
|
|
@@ -112,16 +104,16 @@ | |
| <MSBuild Projects="@(NetCoreDriver)" Targets="restore" Properties="$(ProjectProperties)" /> | ||
| </Target> | ||
|
|
||
| <Target Name="RestoreTestsNetCore" DependsOnTargets="RestoreNetCore"> | ||
| <MSBuild Projects="@(ManualTests)" Targets="restore" Properties="$(TestProjectProperties)" /> | ||
| <Target Name="RestoreTestsNetCore"> | ||
| <Message Text=">>> No op. Will be removed." /> | ||
| </Target> | ||
|
|
||
| <Target Name="RestoreNetFx" DependsOnTargets="RestoreSqlServerLib" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <MSBuild Projects="@(NetFxDriver)" Targets="restore" Properties="$(ProjectProperties)" /> | ||
| </Target> | ||
|
|
||
| <Target Name="RestoreTestsNetFx" DependsOnTargets="RestoreNetFx" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <MSBuild Projects="@(ManualTests)" Targets="restore" Properties="$(TestProjectProperties)" /> | ||
| <Target Name="RestoreTestsNetFx" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <Message Text=">>> No op. Will be removed." /> | ||
| </Target> | ||
|
|
||
| <Target Name="RestoreTools" Condition="'$(BuildTools)' == 'true'"> | ||
|
|
@@ -169,24 +161,6 @@ | |
| <MSBuild Projects="@(NetStandardDriver)" Properties="$(CI);$(ProjectProperties);Platform=AnyCPU;OSGroup=AnyOS;BuildForLib=True" RemoveProperties="TargetsWindows;TargetsUnix;" /> | ||
| </Target> | ||
|
|
||
| <Target Name="BuildManualTestsNetCore" DependsOnTargets="RestoreTestsNetCore"> | ||
| <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> | ||
|
|
||
| <!-- Only build platform specific builds for Package reference types --> | ||
| <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform)] ..." Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> | ||
| </Target> | ||
|
|
||
| <Target Name="BuildManualTestsNetFx" DependsOnTargets="RestoreTestsNetFx" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <Message Text=">>> Building ManualTestsNetFx [TestTargetOS=$(TestOS)netfx;$(TestProjectProperties);Platform=AnyCPU;] ..." Condition="!$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netfx;$(TestProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> | ||
|
|
||
| <!-- Only build platform specific builds for Package reference types --> | ||
| <Message Text=">>> Building ManualTestsNetFx [TestTargetOS=$(TestOS)netfx;$(TestProjectProperties);Platform=$(Platform);] ..." Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netfx;$(TestProjectProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> | ||
| </Target> | ||
|
|
||
| <!-- Tests --> | ||
|
|
||
| <!-- Run all tests applicable to the host OS. --> | ||
|
|
@@ -214,7 +188,7 @@ | |
| <TestCommand>$([System.Text.RegularExpressions.Regex]::Replace($(TestCommand), "\s+", " "))</TestCommand> | ||
| </PropertyGroup> | ||
| <Message Text=">>> Running unit tests for Windows via command: $(TestCommand)"/> | ||
| <Exec ConsoleToMsBuild="true" Command="$(TestCommand)"/> | ||
|
Check failure on line 191 in build.proj
|
||
| </Target> | ||
|
|
||
| <!-- Run all unit tests applicable to Unix. --> | ||
|
|
@@ -296,13 +270,9 @@ | |
| <PropertyGroup> | ||
| <TestCommand> | ||
| $(DotnetPath)dotnet test "@(ManualTestsProj)" | ||
| --no-build | ||
| -v n | ||
| -f $(TF) | ||
| -p:Configuration=$(Configuration) | ||
| -p:Target$(TFGroup)Version=$(TF) | ||
| -p:ReferenceType=$(ReferenceType) | ||
| -p:TestSet=$(TestSet) | ||
| -p:TestTargetOS=Windows$(TargetGroup) | ||
| $(CollectStatement) | ||
| --results-directory $(ResultsDirectory) | ||
| --filter "$(FilterStatement)" | ||
|
|
@@ -311,10 +281,21 @@ | |
| --blame-hang-dump-type full | ||
| --blame-hang-timeout 10m | ||
| </TestCommand> | ||
| <TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand> | ||
|
|
||
| <!-- | ||
| Only set TestSet if it was provided. Using -p sets it globaly, and *immutably*. If we were | ||
| to set it to '', it would be permanently set to '', preventing any tests from running. | ||
| --> | ||
| <TestCommand Condition="'$(TestSet)' != ''"> | ||
| $(TestCommand) | ||
| -p:TestSet=$(TestSet) | ||
| </TestCommand> | ||
|
|
||
| <!-- Convert more than one whitespace character into one space --> | ||
| <TestCommand>$([System.Text.RegularExpressions.Regex]::Replace($(TestCommand), "\s+", " "))</TestCommand> | ||
| </PropertyGroup> | ||
| <Message Text=">>> Running Manual test for Windows via command: $(TestCommand)" /> | ||
| <Exec ConsoleToMsBuild="true" Command="$(TestCommand)" /> | ||
|
Check failure on line 298 in build.proj
|
||
| </Target> | ||
|
|
||
| <!-- Run all Manual tests applicable to Unix. --> | ||
|
|
@@ -322,13 +303,10 @@ | |
| <PropertyGroup> | ||
| <TestCommand> | ||
| $(DotnetPath)dotnet test "@(ManualTestsProj)" | ||
| --no-build | ||
| -v n | ||
| -f $(TF) | ||
| -p:Configuration=$(Configuration) | ||
| -p:TargetNetCoreVersion=$(TF) | ||
| -p:ReferenceType=$(ReferenceType) | ||
| -p:TestSet=$(TestSet) | ||
| -p:TestTargetOS=Unixnetcoreapp | ||
| $(CollectStatement) | ||
|
Comment on lines
305
to
310
|
||
| --results-directory $(ResultsDirectory) | ||
| --filter "$(FilterStatement)" | ||
|
|
@@ -337,7 +315,8 @@ | |
| --blame-hang-dump-type full | ||
| --blame-hang-timeout 10m | ||
| </TestCommand> | ||
| <TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand> | ||
| <!-- Convert more than one whitespace character into one space --> | ||
| <TestCommand>$([System.Text.RegularExpressions.Regex]::Replace($(TestCommand), "\s+", " "))</TestCommand> | ||
| </PropertyGroup> | ||
| <Message Text=">>> Running Manual test for Unix via command: $(TestCommand)" /> | ||
| <Exec ConsoleToMsBuild="true" Command="$(TestCommand)" /> | ||
|
|
@@ -384,31 +363,16 @@ | |
| <MSBuild Projects="@(AKVProvider)" Properties="$(BuildAkvProperties)" RemoveProperties="TargetsWindows;TargetsUnix;" /> | ||
| </Target> | ||
|
|
||
| <Target Name="BuildAKVNetFx" DependsOnTargets="BuildNetFx" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <MSBuild Projects="@(AKVProvider)" Targets="restore" Properties="TestTargetOS=$(TestOS)netfx" /> | ||
| <Message Text=">>> Building AKVNetFx [$(CI);TestTargetOS=$(TestOS)netfx;Platform=AnyCPU;$(TestProjectProperties)] ..." Condition="!$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netfx;Platform=AnyCPU;$(TestProjectProperties);$(NugetPackProperties);" Condition="!$(ReferenceType.Contains('Package'))" /> | ||
|
|
||
| <!-- Only build platform specific builds for Package reference types --> | ||
| <Message Text=">>> Building AKVNetFx [$(CI);TestTargetOS=$(TestOS)netfx;Platform=$(Platform);$(TestProjectProperties)] ..." Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netfx;Platform=$(Platform);$(TestProjectProperties);$(NugetPackProperties);" Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <Target Name="BuildAKVNetFx" Condition="'$(IsEnabledWindows)' == 'true'"> | ||
| <Message Text=">>> No op. This will be removed" /> | ||
| </Target> | ||
|
|
||
| <Target Name="BuildAKVNetCore" DependsOnTargets="BuildNetCore"> | ||
| <MSBuild Projects="@(AKVProvider)" Targets="restore" Properties="TestTargetOS=$(TestOS)netcoreapp" /> | ||
| <Message Text=">>> Building AKVNetCore [$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> | ||
|
|
||
| <!-- Only build platform specific builds for Package reference types --> | ||
| <Message Text=">>> Building AKVNetCore [$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=$(Platform);ReferenceType=$(ReferenceType);] ..." Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> | ||
| <Target Name="BuildAKVNetCore"> | ||
| <Message Text=">>> No op. This will be removed" /> | ||
| </Target> | ||
|
|
||
| <Target Name="BuildAKVNetCoreAllOS" DependsOnTargets="BuildNetCore"> | ||
| <MSBuild Projects="@(AKVProvider)" Targets="restore" Properties="TestTargetOS=$(TestOS)netcoreapp" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=AnyCPU;OSGroup=Unix;" RemoveProperties="TargetsWindows;TargetsUnix;" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=AnyCPU;OSGroup=Windows_NT;" RemoveProperties="TargetsWindows;TargetsUnix;" Condition="'$(IsEnabledWindows)' == 'true'" /> | ||
| <MSBuild Projects="@(AKVProvider)" Properties="$(CI);TestTargetOS=$(TestOS)netcoreapp;$(ProjectProperties);Platform=AnyCPU;OSGroup=AnyOS;" RemoveProperties="TargetsWindows;TargetsUnix;" /> | ||
| <Target Name="BuildAKVNetCoreAllOS"> | ||
| <Message Text=">>> No op. This will be removed" /> | ||
| </Target> | ||
|
|
||
| </Project> | ||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,40 +1,45 @@ | ||||||
| <Project Sdk="Microsoft.NET.Sdk"> | ||||||
| <PropertyGroup> | ||||||
| <RootNamespace>Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider</RootNamespace> | ||||||
| <AssemblyName>Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider</AssemblyName> | ||||||
| <AddOnName>AzureKeyVaultProvider</AddOnName> | ||||||
| <ProjectGuid>{9073ABEF-92E0-4702-BB23-2C99CEF9BDD7}</ProjectGuid> | ||||||
| <TargetGroup Condition="'$([MSBuild]::GetTargetFrameworkIdentifier($(TargetFramework)))'!='.NETFramework'">netcoreapp</TargetGroup> | ||||||
| <TargetGroup Condition="'$([MSBuild]::GetTargetFrameworkIdentifier($(TargetFramework)))'=='.NETFramework'">netfx</TargetGroup> | ||||||
| <Configurations>Debug;Release;</Configurations> | ||||||
| <Platforms>AnyCPU;x86;x64</Platforms> | ||||||
| <IntermediateOutputPath>$(ObjFolder)$(Configuration).$(Platform)\$(AddOnName)</IntermediateOutputPath> | ||||||
| <OutputPath>$(BinFolder)$(Configuration).$(Platform)\$(AddOnName)</OutputPath> | ||||||
| <DocumentationFile>$(BinFolder)$(Configuration).$(Platform)\$(AssemblyName).xml</DocumentationFile> | ||||||
| <!--BuildProjectReferences should be kept false to avoid test issues--> | ||||||
| <BuildProjectReferences>false</BuildProjectReferences> | ||||||
| <RootNamespace>Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider</RootNamespace> | ||||||
| <PackageLicenseExpression>MIT</PackageLicenseExpression> | ||||||
| <PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance> | ||||||
| <IsTrimmable Condition="'$(TargetGroup)'=='netcoreapp'">true</IsTrimmable> | ||||||
| <IsAotCompatible Condition="'$(TargetGroup)'=='netcoreapp'">true</IsAotCompatible> | ||||||
| </PropertyGroup> | ||||||
| <!--Generating Strong Name--> | ||||||
| <PropertyGroup Condition="'$(CDP_BUILD_TYPE)'=='Official'"> | ||||||
| <SignAssembly>true</SignAssembly> | ||||||
| <KeyFile>$(SigningKeyPath)</KeyFile> | ||||||
|
|
||||||
| <!-- Build Output ==================================================== --> | ||||||
| <PropertyGroup> | ||||||
| <!-- @TODO: $(BindFolder) is OS dependent but we're only ever building AnyOS, so ... can we simplify this? --> | ||||||
|
||||||
| <!-- @TODO: $(BindFolder) is OS dependent but we're only ever building AnyOS, so ... can we simplify this? --> | |
| <!-- @TODO: $(BinFolder) is OS dependent but we're only ever building AnyOS, so ... can we simplify this? --> |
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -74,9 +74,15 @@ | |||||
| <!-- the app context switch in their csproj. This file only applies to netcore on windows. --> | ||||||
| <!-- This file does not support pre-processor directives, so it must be conditionally --> | ||||||
| <!-- included into the build. --> | ||||||
| <EmbeddedResource Include="Resources/ILLink.Substitutions.xml" | ||||||
| <EmbeddedResource Include="Resources\ILLink.Substitutions.xml" | ||||||
| Condition="'$(NormalizedTargetOs)' == 'windows_nt' AND '$(TargetFramework)' != 'net462'" /> | ||||||
|
|
||||||
| <!-- Used by SqlMetaDataFactory to construct its DataSet --> | ||||||
| <EmbeddedResource Include="Resources\Microsoft.Data.SqlClient.SqlMetaData.xml"> | ||||||
| <Link>Resources\Microsoft.Data.SqlCLient.SqlMetaData.xml</Link> | ||||||
|
||||||
| <Link>Resources\Microsoft.Data.SqlCLient.SqlMetaData.xml</Link> | |
| <Link>Resources\Microsoft.Data.SqlClient.SqlMetaData.xml</Link> |
Uh oh!
There was an error while loading. Please reload this page.