Skip to content

Commit c6b5994

Browse files
mdh1418Mitchell Hwang
andauthored
[libraries] Move library tests Feature Switches defaults to Functional tests (#53253)
* [libraries] Remove UseSystemResourceKeys true default * [libraries] Remove UseSystemResourceKeys for iOS * [libraries] Resolve WebSockets System resource keys activeissue * [tests] Move default feature switches from libraries to functional tests * [tests] Move Browser wasm default switches into FuntionalTests scope * Add Browser OS condition * Move DefaultFeatureSwitches initialization to FunctionalTests project * Consolidate trimming framework library features and condition for libraries with EnableAggressiveTrimming * [testing][EAT] Revert trimming framework library features to browser defaults for enable aggressive trimming * [tests] Add Xamarin Android, Xamarin Mac/iOS, and Wasm feature defaults to Functional tests * Fixup tabs to spaces * Add common feature switches, links, and cleanup * Cleanup Xamarin Android link Co-authored-by: Mitchell Hwang <[email protected]>
1 parent 1ffa574 commit c6b5994

File tree

5 files changed

+42
-40
lines changed

5 files changed

+42
-40
lines changed

eng/testing/linker/SupportFiles/Directory.Build.props

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
<Project>
22
<PropertyGroup>
33
<SkipConfigureTrimming>true</SkipConfigureTrimming>
4-
<UseDefaultBlazorWASMFeatureSwitches>false</UseDefaultBlazorWASMFeatureSwitches>
5-
<UseDefaultAndroidFeatureSwitches>false</UseDefaultAndroidFeatureSwitches>
6-
<UseDefaultiOSFeatureSwitches>false</UseDefaultiOSFeatureSwitches>
74
<PublishTrimmed>true</PublishTrimmed>
85
<SkipImportRepoLinkerTargets>true</SkipImportRepoLinkerTargets>
96
<SuppressTrimAnalysisWarnings>true</SuppressTrimAnalysisWarnings>

eng/testing/tests.mobile.targets

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,37 +6,20 @@
66
<RunAOTCompilation Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS'">true</RunAOTCompilation>
77

88
<PublishingTestsRun>true</PublishingTestsRun>
9-
<UseDefaultBlazorWASMFeatureSwitches Condition="'$(UseDefaultBlazorWASMFeatureSwitches)' == ''">true</UseDefaultBlazorWASMFeatureSwitches>
10-
<UseDefaultAndroidFeatureSwitches Condition="'$(UseDefaultAndroidFeatureSwitches)' == ''">true</UseDefaultAndroidFeatureSwitches>
11-
<UseDefaultiOSFeatureSwitches Condition="'$(UseDefaultiOSFeatureSwitches)' == ''">true</UseDefaultiOSFeatureSwitches>
129
<BundleTestAppTargets>BundleTestAppleApp;BundleTestAndroidApp</BundleTestAppTargets>
1310
</PropertyGroup>
1411

15-
<PropertyGroup Condition="'$(TargetOS)' == 'Android' and '$(UseDefaultAndroidFeatureSwitches)' == 'true'">
16-
<DebuggerSupport>false</DebuggerSupport>
17-
<EnableUnsafeUTF7Encoding Condition="'$(EnableUnsafeUTF7Encoding)' == ''">false</EnableUnsafeUTF7Encoding>
18-
<EnableUnsafeBinaryFormatterSerialization>false</EnableUnsafeBinaryFormatterSerialization>
19-
<EventSourceSupport>false</EventSourceSupport>
20-
<UseSystemResourceKeys Condition="'$(UseSystemResourceKeys)' == ''">true</UseSystemResourceKeys>
21-
<HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
22-
<StartupHookSupport>false</StartupHookSupport>
23-
<UseNativeHttpHandler>true</UseNativeHttpHandler>
24-
</PropertyGroup>
25-
26-
<PropertyGroup Condition="('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator') and '$(UseDefaultiOSFeatureSwitches)' == 'true'">
27-
<EnableUnsafeBinaryFormatterSerialization>false</EnableUnsafeBinaryFormatterSerialization>
28-
<EnableUnsafeUTF7Encoding Condition="'$(EnableUnsafeUTF7Encoding)' == ''">false</EnableUnsafeUTF7Encoding>
29-
<EventSourceSupport>false</EventSourceSupport>
30-
<HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
31-
<StartupHookSupport>false</StartupHookSupport>
32-
<UseSystemResourceKeys Condition="'$(UseSystemResourceKeys)' == ''">true</UseSystemResourceKeys>
33-
<UseNativeHttpHandler>true</UseNativeHttpHandler>
34-
</PropertyGroup>
35-
3612
<PropertyGroup Condition="'$(EnableAggressiveTrimming)' == 'true'">
3713
<PublishTrimmed>true</PublishTrimmed>
3814
<!-- Suppress linker warnings as these are tests -->
3915
<SuppressTrimAnalysisWarnings>true</SuppressTrimAnalysisWarnings>
16+
17+
<!-- Reduce library test app size by trimming framework library features -->
18+
<DebuggerSupport Condition="'$(DebuggerSupport)' == '' and '$(Configuration)' != 'Debug'">false</DebuggerSupport>
19+
<EnableUnsafeUTF7Encoding Condition="'$(EnableUnsafeUTF7Encoding)' == ''">false</EnableUnsafeUTF7Encoding>
20+
<EventSourceSupport Condition="'$(EventSourceSupport)' == ''">false</EventSourceSupport>
21+
<HttpActivityPropagationSupport Condition="'$(HttpActivityPropagationSupport)' == ''">false</HttpActivityPropagationSupport>
22+
<UseSystemResourceKeys Condition="'$(UseSystemResourceKeys)' == ''">false</UseSystemResourceKeys>
4023
</PropertyGroup>
4124

4225
<PropertyGroup>

eng/testing/tests.wasm.targets

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,6 @@
4747
<RunScriptCommand Condition="'$(RunScriptCommand)' != ''">$(_AOTBuildCommand) &amp;&amp; $(RunScriptCommand)</RunScriptCommand>
4848
</PropertyGroup>
4949

50-
<PropertyGroup Condition="'$(UseDefaultBlazorWASMFeatureSwitches)' == 'true'">
51-
<EventSourceSupport>false</EventSourceSupport>
52-
<UseSystemResourceKeys>false</UseSystemResourceKeys>
53-
<EnableUnsafeUTF7Encoding>false</EnableUnsafeUTF7Encoding>
54-
<HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
55-
56-
<!-- we want to default to what Blazor has, except if we are building in Debug config -->
57-
<DebuggerSupport Condition="'$(DebuggerSupport)' == '' and '$(Configuration)' != 'Debug'">false</DebuggerSupport>
58-
</PropertyGroup>
59-
6050
<!-- Don't include InTree.props here, because the test projects themselves can set the target* properties -->
6151
<Import Project="$(MonoProjectRoot)\wasm\build\WasmApp.props"
6252
Condition="'$(BuildAOTTestsOn)' == 'local'" />

src/libraries/System.Net.WebSockets/tests/WebSocketDeflateTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,6 @@ public async Task LargeMessageSplitInMultipleFrames(int windowBits)
349349
}
350350

351351
[Fact]
352-
[ActiveIssue("https://github.com/dotnet/runtime/issues/52645", TestPlatforms.Android)]
353352
public async Task WebSocketWithoutDeflateShouldThrowOnCompressedMessage()
354353
{
355354
WebSocketTestStream stream = new();
@@ -364,7 +363,6 @@ public async Task WebSocketWithoutDeflateShouldThrowOnCompressedMessage()
364363
}
365364

366365
[Fact]
367-
[ActiveIssue("https://github.com/dotnet/runtime/issues/52645", TestPlatforms.Android)]
368366
public async Task ReceiveUncompressedMessageWhenCompressionEnabled()
369367
{
370368
// We should be able to handle the situation where even if we have
@@ -401,7 +399,6 @@ public async Task ReceiveUncompressedMessageWhenCompressionEnabled()
401399
}
402400

403401
[Fact]
404-
[ActiveIssue("https://github.com/dotnet/runtime/issues/52645", TestPlatforms.Android)]
405402
public async Task ReceiveInvalidCompressedData()
406403
{
407404
WebSocketTestStream stream = new();

src/tests/FunctionalTests/Directory.Build.props

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,40 @@
77
<IsFunctionalTest>true</IsFunctionalTest>
88
</PropertyGroup>
99

10+
<!-- Available feature switches: https://github.com/dotnet/runtime/blob/master/docs/workflow/trimming/feature-switches.md -->
11+
<PropertyGroup Condition="'$(TargetsMobile)' == 'true'">
12+
<EnableUnsafeUTF7Encoding Condition="'$(EnableUnsafeUTF7Encoding)' == ''">false</EnableUnsafeUTF7Encoding>
13+
<EventSourceSupport Condition="'$(EventSourceSupport)' == ''">false</EventSourceSupport>
14+
<HttpActivityPropagationSupport Condition="'$(HttpActivityPropagationSupport)' == ''">false</HttpActivityPropagationSupport>
15+
<UseSystemResourceKeys Condition="'$(UseSystemResourceKeys)' == ''">true</UseSystemResourceKeys>
16+
</PropertyGroup>
17+
18+
<!-- Modeled after Microsoft.Android.Sdk.ILLink.targets https://github.com/xamarin/xamarin-android/blob/main/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.DefaultProperties.targets -->
19+
<PropertyGroup Condition="'$(TargetOS)' == 'Android'">
20+
<DebuggerSupport Condition="'$(DebuggerSupport)' == ''">false</DebuggerSupport>
21+
<EnableUnsafeBinaryFormatterSerialization Condition="'$(EnableUnsafeBinaryFormatterSerialization)' == ''">false</EnableUnsafeBinaryFormatterSerialization>
22+
<InvariantGlobalization Condition="'$(InvariantGlobalization)' != 'true'"></InvariantGlobalization>
23+
<StartupHookSupport Condition="'$(StartupHookSupport)' == ''">false</StartupHookSupport>
24+
<UseNativeHttpHandler Condition="'$(UseNativeHttpHandler)' == ''">true</UseNativeHttpHandler>
25+
</PropertyGroup>
26+
27+
<!-- Modeled after Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets https://github.com/dotnet/sdk/blob/main/src/BlazorWasmSdk/Targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets -->
28+
<PropertyGroup Condition="'$(TargetOS)' == 'Browser'">
29+
<DebuggerSupport Condition="'$(DebuggerSupport)' == '' and '$(Configuration)' != 'Debug'">false</DebuggerSupport>
30+
<InvariantGlobalization Condition="'$(InvariantGlobalization)' == ''">false</InvariantGlobalization>
31+
</PropertyGroup>
32+
33+
<!-- Modeled after Xamarin.Shared.Sdk.targets https://github.com/xamarin/xamarin-macios/blob/main/dotnet/targets/Xamarin.Shared.Sdk.targets -->
34+
<PropertyGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'MacCatalyst'">
35+
<CustomResourceTypesSupport Condition="'$(CustomResourceTypesSupport)' == ''">false</CustomResourceTypesSupport>
36+
<DebuggerSupport Condition="'$(DebuggerSupport)' == '' and '$(Configuration)' == 'Debug'">true</DebuggerSupport>
37+
<DebuggerSupport Condition="'$(DebuggerSupport)' == ''">false</DebuggerSupport>
38+
<EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization Condition="'$(EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization)' == ''">false</EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization>
39+
<EnableUnsafeBinaryFormatterSerialization Condition="'$(EnableUnsafeBinaryFormatterSerialization)' == ''">false</EnableUnsafeBinaryFormatterSerialization>
40+
<InvariantGlobalization Condition="'$(TargetOS)' == 'MacCatalyst' and '$(InvariantGlobalization)' == ''">true</InvariantGlobalization>
41+
<StartupHookSupport Condition="'$(StartupHookSupport)' == ''">false</StartupHookSupport>
42+
<UseNativeHttpHandler Condition="'$(UseNativeHttpHandler)' == ''">true</UseNativeHttpHandler>
43+
</PropertyGroup>
44+
1045
<Import Project="..\..\libraries\Directory.Build.props" />
1146
</Project>

0 commit comments

Comments
 (0)