Run helix tests on master (#6728)
This commit is contained in:
parent
2345c837ce
commit
c9499e14e4
|
|
@ -0,0 +1,28 @@
|
||||||
|
# Don't run CI for this config yet. We're not ready to move official builds on to Azure Pipelines
|
||||||
|
trigger: none
|
||||||
|
|
||||||
|
# Run PR validation on all branches
|
||||||
|
pr:
|
||||||
|
branches:
|
||||||
|
include:
|
||||||
|
- '*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: Helix
|
||||||
|
timeoutInMinutes: 240
|
||||||
|
pool:
|
||||||
|
name: Hosted VS2017
|
||||||
|
vmImage: vs2017-win2016
|
||||||
|
steps:
|
||||||
|
- checkout: self
|
||||||
|
clean: true
|
||||||
|
- script: .\build.cmd -all -ci /t:Helix /p:IsHelixJob=true /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\SendToHelix.binlog
|
||||||
|
displayName: Run build.cmd helix target
|
||||||
|
- task: PublishBuildArtifacts@1
|
||||||
|
displayName: Publish Logs to VSTS
|
||||||
|
inputs:
|
||||||
|
PathtoPublish: '$(Build.SourcesDirectory)/artifacts/log'
|
||||||
|
PublishLocation: Container
|
||||||
|
ArtifactName: $(Agent.Os)_$(Agent.JobName)
|
||||||
|
continueOnError: true
|
||||||
|
condition: always()
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<Project>
|
<Project>
|
||||||
<Import Project="version.props" />
|
<Import Project="version.props" />
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,8 @@
|
||||||
<IsPackable Condition="'$(IsPackable)' == '' ">false</IsPackable>
|
<IsPackable Condition="'$(IsPackable)' == '' ">false</IsPackable>
|
||||||
|
|
||||||
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">$(MicrosoftNETCoreAppPackageVersion)</RuntimeFrameworkVersion>
|
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">$(MicrosoftNETCoreAppPackageVersion)</RuntimeFrameworkVersion>
|
||||||
|
|
||||||
|
<BuildHelixPayload Condition="'$(BuildHelixPayload)' == '' AND '$(IsTestProject)' == 'true'">true</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Import Project="eng\targets\ResolveIisReferences.targets" Condition=" '$(MSBuildProjectExtension)' != '.vcxproj' " />
|
<Import Project="eng\targets\ResolveIisReferences.targets" Condition=" '$(MSBuildProjectExtension)' != '.vcxproj' " />
|
||||||
|
|
@ -68,4 +70,96 @@
|
||||||
<Import Project="eng\targets\FSharp.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" />
|
<Import Project="eng\targets\FSharp.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" />
|
||||||
<Import Project="eng\targets\Wix.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.wixproj'" />
|
<Import Project="eng\targets\Wix.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.wixproj'" />
|
||||||
<Import Project="eng\targets\Npm.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.npmproj'" />
|
<Import Project="eng\targets\Npm.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.npmproj'" />
|
||||||
|
|
||||||
|
<!-- Move to CSharp.Common.props -->
|
||||||
|
<ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' AND '$(IsHelixJob)' == 'true' ">
|
||||||
|
<PackageReference Include="xunit.runner.console" Version="2.4.1" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- Prepares the test projects for helix by including xunit and publishing -->
|
||||||
|
<Target Name="PrepareHelixPayload" Returns="@(HelixDirectory)">
|
||||||
|
<ItemGroup>
|
||||||
|
<_TargetFrameworks Remove="@(_TargetFrameworks)" />
|
||||||
|
<_TargetFrameworks Include="$(TargetFrameworks);$(TargetFramework)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<MSBuild Projects="$(MSBuildProjectFullPath)"
|
||||||
|
Targets="_PrepareHelixPayloadInner"
|
||||||
|
Properties="TargetFramework=%(_TargetFrameworks.Identity);IsWindowsHelixQueue=$(HelixTargetQueue.Contains('Windows'))">
|
||||||
|
<Output TaskParameter="TargetOutputs" ItemName="HelixDirectory" />
|
||||||
|
</MSBuild>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="_PrepareHelixPayloadInner"
|
||||||
|
DependsOnTargets="Publish"
|
||||||
|
Condition="'$(BuildHelixPayload)' == 'true'"
|
||||||
|
Returns="@(HelixDirectory)">
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<HelixDirectory Include="$(MSBuildProjectFullPath)" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<!-- Build the actual helix work items to send to helix queues -->
|
||||||
|
<Target Name="CreateHelixPayload" Returns="@(HelixPayload)">
|
||||||
|
<ItemGroup>
|
||||||
|
<_TargetFrameworks Remove="@(_TargetFrameworks)" />
|
||||||
|
<_TargetFrameworks Include="$(TargetFrameworks);$(TargetFramework)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<MSBuild Projects="$(MSBuildProjectFullPath)"
|
||||||
|
Targets="_CreateHelixPayloadInner"
|
||||||
|
Properties="TargetFramework=%(_TargetFrameworks.Identity);IsWindowsHelixQueue=$(HelixTargetQueue.Contains('Windows'))">
|
||||||
|
<Output TaskParameter="TargetOutputs" ItemName="HelixPayload" />
|
||||||
|
</MSBuild>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="CollectXunitConsoleRunner" Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">
|
||||||
|
<PropertyGroup>
|
||||||
|
<XunitConsoleRunnerDir>$([System.IO.Path]::GetDirectoryName($(XunitConsole472Path)))</XunitConsoleRunnerDir>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<XunitConsoleRunnerFiles Include="$(XunitConsoleRunnerDir)/**/*" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<Copy SourceFiles="@(XunitConsoleRunnerFiles)" DestinationFolder="$(PublishDir)" />
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="_CreateHelixPayloadInner"
|
||||||
|
DependsOnTargets="CollectXunitConsoleRunner"
|
||||||
|
Condition="($(IsWindowsHelixQueue) OR '$(TargetFrameworkIdentifier)' != '.NETFramework')"
|
||||||
|
Returns="@(HelixPayload)">
|
||||||
|
|
||||||
|
<ConvertToAbsolutePath Paths="$(PublishDir)">
|
||||||
|
<Output TaskParameter="AbsolutePaths" PropertyName="PublishAbsoluteDir" />
|
||||||
|
</ConvertToAbsolutePath>
|
||||||
|
|
||||||
|
<!-- Windows NetCore -->
|
||||||
|
<ItemGroup Condition="'$(TargetFrameworkIdentifier)' != '.NETFramework' AND $(IsWindowsHelixQueue)" >
|
||||||
|
<_CopyItems Include="$(MSBuildThisFileDirectory)test\vstest\runtests.cmd" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- Windows NetFramework -->
|
||||||
|
<ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' AND $(IsWindowsHelixQueue)" >
|
||||||
|
<_CopyItems Include="$(MSBuildThisFileDirectory)test\xunit\runtests.cmd" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- NonWindows -->
|
||||||
|
<ItemGroup Condition="!$(IsWindowsHelixQueue)" >
|
||||||
|
<_CopyItems Include="$(MSBuildThisFileDirectory)test\vstest\runtests.sh" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<Copy SourceFiles="@(_CopyItems)" DestinationFolder="$(PublishAbsoluteDir)" />
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<HelixPayload Include="$(PublishAbsoluteDir)">
|
||||||
|
<TestAssembly>$(TargetFileName)</TestAssembly>
|
||||||
|
<TestName>$(MSBuildProjectName)-$(TargetFramework)</TestName>
|
||||||
|
<Command Condition="$(IsWindowsHelixQueue)">runtests.cmd $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion)</Command>
|
||||||
|
<Command Condition="!$(IsWindowsHelixQueue)">./runtests.sh $(TargetFileName) $(NETCoreSdkVersion) $(MicrosoftNETCoreAppPackageVersion)</Command>
|
||||||
|
<TestTimeout>00:30:00</TestTimeout>
|
||||||
|
</HelixPayload>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
The only allowed feed here is myget.org/aspnet-tools which is required to work around
|
The only allowed feed here is myget.org/aspnet-tools which is required to work around
|
||||||
https://github.com/Microsoft/msbuild/issues/2914
|
https://github.com/Microsoft/msbuild/issues/2914
|
||||||
-->
|
-->
|
||||||
|
<add key="dotnet-core" value="https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json" />
|
||||||
<add key="myget.org aspnetcore-tools" value="https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json" />
|
<add key="myget.org aspnetcore-tools" value="https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json" />
|
||||||
</packageSources>
|
</packageSources>
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|
|
||||||
|
|
@ -111,4 +111,30 @@
|
||||||
Properties="$(BuildProperties);__DummyTarget=GenerateBuildAssetManifest" />
|
Properties="$(BuildProperties);__DummyTarget=GenerateBuildAssetManifest" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
|
<!-- will move into korebuild -->
|
||||||
|
<Target Name="HelixPublish" DependsOnTargets="Restore">
|
||||||
|
<ItemGroup>
|
||||||
|
<CsProjects Include="@(ProjectToBuild)" Condition="'%(Extension)' == '.csproj'" />
|
||||||
|
</ItemGroup>
|
||||||
|
<MSBuild Projects="@(CsProjects)"
|
||||||
|
Targets="PrepareHelixPayload"
|
||||||
|
BuildInParallel="false">
|
||||||
|
<Output TaskParameter="TargetOutputs" ItemName="HelixDirectory" />
|
||||||
|
</MSBuild>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<HelixTestProject Include="@(HelixDirectory)" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="Helix" DependsOnTargets="HelixPublish">
|
||||||
|
<PropertyGroup>
|
||||||
|
<HelixTestProjects>@(HelixTestProject)</HelixTestProjects>
|
||||||
|
</PropertyGroup>
|
||||||
|
<MSBuild Projects="$(MSBuildThisFileDirectory)..\test\helix.proj"
|
||||||
|
Targets="Test"
|
||||||
|
Properties="ProjectsToTest=$(HelixTestProjects)"
|
||||||
|
ContinueOnError="ErrorAndStop"
|
||||||
|
BuildInParallel="false" />
|
||||||
|
</Target>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
<TargetFramework>net$(TargetFrameworkVersion.Substring(1).Replace('.',''))</TargetFramework>
|
<TargetFramework>net$(TargetFrameworkVersion.Substring(1).Replace('.',''))</TargetFramework>
|
||||||
<TargetFrameworkIdentifier>.NETFramework</TargetFrameworkIdentifier>
|
<TargetFrameworkIdentifier>.NETFramework</TargetFrameworkIdentifier>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Import Project="Packaging.targets" />
|
<Import Project="Packaging.targets" />
|
||||||
<Import Project="ResolveReferences.targets" />
|
<Import Project="ResolveReferences.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\testassets\StandaloneApp\StandaloneApp.csproj" />
|
<ProjectReference Include="..\..\testassets\StandaloneApp\StandaloneApp.csproj" />
|
||||||
|
<Compile Include="..\..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
|
|
||||||
<Compile Include="$(ComponentsSharedSourceRoot)test\**\*.cs" LinkBase="Helpers" />
|
<Compile Include="$(ComponentsSharedSourceRoot)test\**\*.cs" LinkBase="Helpers" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using Microsoft.AspNetCore.Testing.xunit;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
using Xunit.Abstractions;
|
using Xunit.Abstractions;
|
||||||
|
|
||||||
|
|
@ -19,7 +20,8 @@ namespace Microsoft.AspNetCore.Blazor.Build.Test
|
||||||
_output = output;
|
_output = output;
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549
|
||||||
public void FindsReferenceAssemblyGraph_ForStandaloneApp()
|
public void FindsReferenceAssemblyGraph_ForStandaloneApp()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/7202 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,8 @@
|
||||||
Temporarily disabled until this runs on macOS
|
Temporarily disabled until this runs on macOS
|
||||||
-->
|
-->
|
||||||
<SkipTests Condition="'$(BlazorAllTests)' != 'true'">true</SkipTests>
|
<SkipTests Condition="'$(BlazorAllTests)' != 'true'">true</SkipTests>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6857 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -113,8 +113,9 @@ namespace Microsoft.AspNetCore.DataProtection
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
[X509StoreIsAvailable(StoreName.My, StoreLocation.CurrentUser)]
|
[X509StoreIsAvailable(StoreName.My, StoreLocation.CurrentUser)]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public void System_UsesProvidedDirectoryAndCertificate()
|
public void System_UsesProvidedDirectoryAndCertificate()
|
||||||
{
|
{
|
||||||
var filePath = Path.Combine(GetTestFilesPath(), "TestCert.pfx");
|
var filePath = Path.Combine(GetTestFilesPath(), "TestCert.pfx");
|
||||||
|
|
@ -164,6 +165,7 @@ namespace Microsoft.AspNetCore.DataProtection
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
[X509StoreIsAvailable(StoreName.My, StoreLocation.CurrentUser)]
|
[X509StoreIsAvailable(StoreName.My, StoreLocation.CurrentUser)]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public void System_UsesProvidedCertificateNotFromStore()
|
public void System_UsesProvidedCertificateNotFromStore()
|
||||||
{
|
{
|
||||||
using (var store = new X509Store(StoreName.My, StoreLocation.CurrentUser))
|
using (var store = new X509Store(StoreName.My, StoreLocation.CurrentUser))
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="..\..\shared\test\*.cs" />
|
<Compile Include="..\..\shared\test\*.cs" />
|
||||||
<Content Include="TestFiles\**\*" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="TestFiles\**\*" CopyToOutputDirectory="PreserveNewest" />
|
||||||
|
<Compile Include="..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
<Content Include="testroot\**\*" CopyToOutputDirectory="PreserveNewest" CopyToPublishDirectory="PreserveNewest" />
|
<Content Include="testroot\**\*" CopyToOutputDirectory="PreserveNewest" CopyToPublishDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Hosting.Server;
|
||||||
using Microsoft.AspNetCore.Hosting.Server.Features;
|
using Microsoft.AspNetCore.Hosting.Server.Features;
|
||||||
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Http;
|
||||||
using Microsoft.AspNetCore.Http.Features;
|
using Microsoft.AspNetCore.Http.Features;
|
||||||
|
using Microsoft.AspNetCore.Testing.xunit;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
|
|
@ -194,7 +195,8 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7291
|
||||||
public async Task WebHostStopAsyncUsesDefaultTimeoutIfGivenTokenDoesNotFire()
|
public async Task WebHostStopAsyncUsesDefaultTimeoutIfGivenTokenDoesNotFire()
|
||||||
{
|
{
|
||||||
var data = new Dictionary<string, string>
|
var data = new Dictionary<string, string>
|
||||||
|
|
@ -233,7 +235,8 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7291
|
||||||
public async Task WebHostStopAsyncUsesDefaultTimeoutIfNoTokenProvided()
|
public async Task WebHostStopAsyncUsesDefaultTimeoutIfNoTokenProvided()
|
||||||
{
|
{
|
||||||
var data = new Dictionary<string, string>
|
var data = new Dictionary<string, string>
|
||||||
|
|
@ -308,7 +311,8 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7291
|
||||||
public void WebHostApplicationLifetimeEventsOrderedCorrectlyDuringShutdown()
|
public void WebHostApplicationLifetimeEventsOrderedCorrectlyDuringShutdown()
|
||||||
{
|
{
|
||||||
using (var host = CreateBuilder()
|
using (var host = CreateBuilder()
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -173,17 +173,17 @@ namespace Microsoft.AspNetCore.Routing
|
||||||
var ex = Assert.Throws<InvalidOperationException>(() => addressScheme.FindEndpoints("any name"));
|
var ex = Assert.Throws<InvalidOperationException>(() => addressScheme.FindEndpoints("any name"));
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(@"The following endpoints with a duplicate endpoint name were found.
|
Assert.Equal(String.Join(Environment.NewLine, @"The following endpoints with a duplicate endpoint name were found.",
|
||||||
|
"",
|
||||||
Endpoints with endpoint name 'name1':
|
"Endpoints with endpoint name 'name1':",
|
||||||
a
|
"a",
|
||||||
b
|
"b",
|
||||||
c
|
"c",
|
||||||
|
"",
|
||||||
Endpoints with endpoint name 'name2':
|
"Endpoints with endpoint name 'name2':",
|
||||||
e
|
"e",
|
||||||
f
|
"f",
|
||||||
", ex.Message);
|
""), ex.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
private EndpointNameAddressScheme CreateAddressScheme(params Endpoint[] endpoints)
|
private EndpointNameAddressScheme CreateAddressScheme(params Endpoint[] endpoints)
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
// Copyright (c) .NET Foundation. All rights reserved.
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Http;
|
||||||
using Microsoft.AspNetCore.Routing.Patterns;
|
using Microsoft.AspNetCore.Routing.Patterns;
|
||||||
|
|
@ -33,10 +34,9 @@ namespace Microsoft.AspNetCore.Routing.Internal
|
||||||
graphWriter.Write(endpointsDataSource, writer);
|
graphWriter.Write(endpointsDataSource, writer);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(@"digraph DFA {
|
Assert.Equal(String.Join(Environment.NewLine, @"digraph DFA {",
|
||||||
0 [label=""/""]
|
@"0 [label=""/""]",
|
||||||
}
|
"}") + Environment.NewLine, writer.ToString());
|
||||||
", writer.ToString());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
|
|
@ -57,10 +57,9 @@ namespace Microsoft.AspNetCore.Routing.Internal
|
||||||
graphWriter.Write(endpointsDataSource, writer);
|
graphWriter.Write(endpointsDataSource, writer);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(@"digraph DFA {
|
Assert.Equal(String.Join(Environment.NewLine, @"digraph DFA {",
|
||||||
0 [label=""/""]
|
@"0 [label=""/""]",
|
||||||
}
|
@"}") + Environment.NewLine, writer.ToString());
|
||||||
", writer.ToString());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
|
|
@ -82,14 +81,13 @@ namespace Microsoft.AspNetCore.Routing.Internal
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
var sdf = writer.ToString();
|
var sdf = writer.ToString();
|
||||||
Assert.Equal(@"digraph DFA {
|
Assert.Equal(String.Join(Environment.NewLine, @"digraph DFA {",
|
||||||
0 [label=""/ HTTP: GET""]
|
@"0 [label=""/ HTTP: GET""]",
|
||||||
1 [label=""/ HTTP: *""]
|
@"1 [label=""/ HTTP: *""]",
|
||||||
2 -> 0 [label=""HTTP: GET""]
|
@"2 -> 0 [label=""HTTP: GET""]",
|
||||||
2 -> 1 [label=""HTTP: *""]
|
@"2 -> 1 [label=""HTTP: *""]",
|
||||||
2 [label=""/""]
|
@"2 [label=""/""]",
|
||||||
}
|
@"}") + Environment.NewLine, sdf);
|
||||||
", sdf);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -167,10 +167,8 @@ namespace Microsoft.AspNetCore.Routing.Matching
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(
|
Assert.Equal(
|
||||||
@"The request matched multiple endpoints. Matches:
|
@"The request matched multiple endpoints. Matches: " + Environment.NewLine + Environment.NewLine +
|
||||||
|
"test: /test2" + Environment.NewLine + "test: /test3", ex.Message);
|
||||||
test: /test2
|
|
||||||
test: /test3", ex.Message);
|
|
||||||
Assert.Null(context.Endpoint);
|
Assert.Null(context.Endpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -204,4 +202,4 @@ test: /test3", ex.Message);
|
||||||
return new DefaultEndpointSelector();
|
return new DefaultEndpointSelector();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer
|
||||||
UnsafeEphemeralKeySet : (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) ? X509KeyStorageFlags.PersistKeySet :
|
UnsafeEphemeralKeySet : (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) ? X509KeyStorageFlags.PersistKeySet :
|
||||||
X509KeyStorageFlags.DefaultKeySet);
|
X509KeyStorageFlags.DefaultKeySet);
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
[FrameworkSkipCondition(RuntimeFrameworks.CLR)]
|
[FrameworkSkipCondition(RuntimeFrameworks.CLR)]
|
||||||
public void Configure_AddsDevelopmentKeyFromConfiguration()
|
public void Configure_AddsDevelopmentKeyFromConfiguration()
|
||||||
{
|
{
|
||||||
|
|
@ -62,7 +63,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public void Configure_LoadsPfxCertificateCredentialFromConfiguration()
|
public void Configure_LoadsPfxCertificateCredentialFromConfiguration()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
|
|
@ -91,7 +93,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer
|
||||||
Assert.Equal("AC8FDF4BD4C10841BD24DC88D983225D10B43BB2", key.Certificate.Thumbprint);
|
Assert.Equal("AC8FDF4BD4C10841BD24DC88D983225D10B43BB2", key.Certificate.Thumbprint);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public void Configure_LoadsCertificateStoreCertificateCredentialFromConfiguration()
|
public void Configure_LoadsCertificateStoreCertificateCredentialFromConfiguration()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
||||||
|
|
@ -58,7 +58,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer.Configuration
|
||||||
Assert.Equal("Couldn't find a valid certificate with subject 'Invalid' on the 'CurrentUser\\My'", exception.Message);
|
Assert.Equal("Couldn't find a valid certificate with subject 'Invalid' on the 'CurrentUser\\My'", exception.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public static void LoadFromStoreCert_SkipsCertificatesNotYetValid()
|
public static void LoadFromStoreCert_SkipsCertificatesNotYetValid()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -80,7 +81,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer.Configuration
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public static void LoadFromStoreCert_PrefersCertificatesCloserToExpirationDate()
|
public static void LoadFromStoreCert_PrefersCertificatesCloserToExpirationDate()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -102,7 +104,8 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer.Configuration
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public static void LoadFromStoreCert_SkipsExpiredCertificates()
|
public static void LoadFromStoreCert_SkipsExpiredCertificates()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.AspNetCore.ApiAuthorization.IdentityServer" />
|
<Reference Include="Microsoft.AspNetCore.ApiAuthorization.IdentityServer" />
|
||||||
|
<Compile Include="..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ using System.Net.Http;
|
||||||
using System.Security.Cryptography;
|
using System.Security.Cryptography;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using Microsoft.AspNetCore.Testing.xunit;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
using Xunit.Abstractions;
|
using Xunit.Abstractions;
|
||||||
|
|
||||||
|
|
@ -37,7 +38,8 @@ namespace Microsoft.AspNetCore.Identity.Test
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Theory]
|
[ConditionalTheory]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549
|
||||||
[MemberData(nameof(ScriptWithIntegrityData))]
|
[MemberData(nameof(ScriptWithIntegrityData))]
|
||||||
public async Task IdentityUI_ScriptTags_SubresourceIntegrityCheck(ScriptTag scriptTag)
|
public async Task IdentityUI_ScriptTags_SubresourceIntegrityCheck(ScriptTag scriptTag)
|
||||||
{
|
{
|
||||||
|
|
@ -65,7 +67,8 @@ namespace Microsoft.AspNetCore.Identity.Test
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Theory]
|
[ConditionalTheory]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6549
|
||||||
[MemberData(nameof(ScriptWithFallbackSrcData))]
|
[MemberData(nameof(ScriptWithFallbackSrcData))]
|
||||||
public async Task IdentityUI_ScriptTags_FallbackSourceContent_Matches_CDNContent(ScriptTag scriptTag)
|
public async Task IdentityUI_ScriptTags_FallbackSourceContent_Matches_CDNContent(ScriptTag scriptTag)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="$(IdentityTestSharedSourceRoot)**\*.cs" />
|
<Compile Include="$(IdentityTestSharedSourceRoot)**\*.cs" />
|
||||||
|
<Compile Include="..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<TestGroupName>Cors.FunctionalTests</TestGroupName>
|
<TestGroupName>Cors.FunctionalTests</TestGroupName>
|
||||||
<DefaultItemExcludes>$(DefaultItemExcludes);node_modules\**\*</DefaultItemExcludes>
|
<DefaultItemExcludes>$(DefaultItemExcludes);node_modules\**\*</DefaultItemExcludes>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,8 @@
|
||||||
<WarningsNotAsErrors>$(WarningsNotAsErrors);xUnit1004</WarningsNotAsErrors>
|
<WarningsNotAsErrors>$(WarningsNotAsErrors);xUnit1004</WarningsNotAsErrors>
|
||||||
<!-- Temporarily suppress warnings about Microsoft.AspNetCore.Server.IntegrationTesting -->
|
<!-- Temporarily suppress warnings about Microsoft.AspNetCore.Server.IntegrationTesting -->
|
||||||
<NoWarn>$(NoWarn);NU1605</NoWarn>
|
<NoWarn>$(NoWarn);NU1605</NoWarn>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@
|
||||||
<DefineConstants>$(DefineConstants);__RemoveThisBitTo__GENERATE_BASELINES</DefineConstants>
|
<DefineConstants>$(DefineConstants);__RemoveThisBitTo__GENERATE_BASELINES</DefineConstants>
|
||||||
<!-- The test asset projects this depends on are not strong-named. -->
|
<!-- The test asset projects this depends on are not strong-named. -->
|
||||||
<SignAssembly>false</SignAssembly>
|
<SignAssembly>false</SignAssembly>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<PreserveCompilationContext>true</PreserveCompilationContext>
|
<PreserveCompilationContext>true</PreserveCompilationContext>
|
||||||
<RootNamespace>Microsoft.AspNetCore.Mvc.Analyzers</RootNamespace>
|
<RootNamespace>Microsoft.AspNetCore.Mvc.Analyzers</RootNamespace>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,8 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<RootNamespace>Microsoft.AspNetCore.Mvc.Api.Analyzers</RootNamespace>
|
<RootNamespace>Microsoft.AspNetCore.Mvc.Api.Analyzers</RootNamespace>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@
|
||||||
<!-- Workaround until https://github.com/aspnet/AspNetCore/issues/4321 is resolved. -->
|
<!-- Workaround until https://github.com/aspnet/AspNetCore/issues/4321 is resolved. -->
|
||||||
<RunTemplateTests Condition="'$(OS)' != 'Windows_NT'">true</RunTemplateTests>
|
<RunTemplateTests Condition="'$(OS)' != 'Windows_NT'">true</RunTemplateTests>
|
||||||
<SkipTests Condition="'$(RunTemplateTests)' != 'true'">true</SkipTests>
|
<SkipTests Condition="'$(RunTemplateTests)' != 'true'">true</SkipTests>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6857 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<IsSampleProject>false</IsSampleProject>
|
<IsSampleProject>false</IsSampleProject>
|
||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Import Project="$(MvcTestingTargets)" Condition="'$(MvcTestingTargets)' != ''" />
|
<Import Project="$(MvcTestingTargets)" Condition="'$(MvcTestingTargets)' != ''" />
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
<DisableFastUpToDateCheck>True</DisableFastUpToDateCheck>
|
<DisableFastUpToDateCheck>True</DisableFastUpToDateCheck>
|
||||||
<TestGroupName>IISExpress.FunctionalTests</TestGroupName>
|
<TestGroupName>IISExpress.FunctionalTests</TestGroupName>
|
||||||
<SkipTests Condition=" '$(SkipIISExpressTests)' == 'true' ">true</SkipTests>
|
<SkipTests Condition=" '$(SkipIISExpressTests)' == 'true' ">true</SkipTests>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -5,13 +5,15 @@ using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Microsoft.AspNetCore.Testing.xunit;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests
|
namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests
|
||||||
{
|
{
|
||||||
public class GeneratedCodeTests
|
public class GeneratedCodeTests
|
||||||
{
|
{
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6720
|
||||||
public void GeneratedCodeIsUpToDate()
|
public void GeneratedCodeIsUpToDate()
|
||||||
{
|
{
|
||||||
var repositoryRoot = typeof(GeneratedCodeTests).Assembly.GetCustomAttributes<AssemblyMetadataAttribute>().First(f => string.Equals(f.Key, "RepositoryRoot", StringComparison.OrdinalIgnoreCase)).Value;
|
var repositoryRoot = typeof(GeneratedCodeTests).Assembly.GetCustomAttributes<AssemblyMetadataAttribute>().First(f => string.Equals(f.Key, "RepositoryRoot", StringComparison.OrdinalIgnoreCase)).Value;
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
||||||
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
|
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
|
||||||
|
<Compile Include="..\..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
||||||
|
|
||||||
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
[HostNameIsReachable]
|
[HostNameIsReachable]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7267
|
||||||
public async Task RegisterAddresses_HostName_Success()
|
public async Task RegisterAddresses_HostName_Success()
|
||||||
{
|
{
|
||||||
var hostName = Dns.GetHostName();
|
var hostName = Dns.GetHostName();
|
||||||
|
|
@ -332,6 +333,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
[HostNameIsReachable]
|
[HostNameIsReachable]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7267
|
||||||
public async Task ListenAnyIP_HostName_Success()
|
public async Task ListenAnyIP_HostName_Success()
|
||||||
{
|
{
|
||||||
var hostName = Dns.GetHostName();
|
var hostName = Dns.GetHostName();
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
<ServerGarbageCollection>true</ServerGarbageCollection>
|
<ServerGarbageCollection>true</ServerGarbageCollection>
|
||||||
<TestGroupName>InMemory.FunctionalTests</TestGroupName>
|
<TestGroupName>InMemory.FunctionalTests</TestGroupName>
|
||||||
|
<!-- // https://github.com/aspnet/AspNetCore/issues/7000 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ namespace Interop.FunctionalTests
|
||||||
{
|
{
|
||||||
[ConditionalTheory]
|
[ConditionalTheory]
|
||||||
[MemberData(nameof(H2SpecTestCases))]
|
[MemberData(nameof(H2SpecTestCases))]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/7299
|
||||||
public async Task RunIndividualTestCase(H2SpecTestCase testCase)
|
public async Task RunIndividualTestCase(H2SpecTestCase testCase)
|
||||||
{
|
{
|
||||||
var hostBuilder = new WebHostBuilder()
|
var hostBuilder = new WebHostBuilder()
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
<Compile Include="$(KestrelSharedSourceRoot)test\TransportTestHelpers\IWebHostPortExtensions.cs" LinkBase="shared" />
|
<Compile Include="$(KestrelSharedSourceRoot)test\TransportTestHelpers\IWebHostPortExtensions.cs" LinkBase="shared" />
|
||||||
<Compile Include="$(KestrelSharedSourceRoot)test\TestResources.cs" LinkBase="shared" />
|
<Compile Include="$(KestrelSharedSourceRoot)test\TestResources.cs" LinkBase="shared" />
|
||||||
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
||||||
|
<Compile Include="..\..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -7,13 +7,14 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="..\..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
<Compile Include="..\BindTests\**\*.cs" />
|
<Compile Include="..\BindTests\**\*.cs" />
|
||||||
<Compile Include="..\Libuv.FunctionalTests\TransportSelector.cs" />
|
<Compile Include="..\Libuv.FunctionalTests\TransportSelector.cs" />
|
||||||
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
||||||
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
|
<Compile Include="$(KestrelSharedSourceRoot)test\*.cs" LinkBase="shared" />
|
||||||
<Compile Include="$(KestrelSharedSourceRoot)test\TransportTestHelpers\*.cs" LinkBase="shared\TransportTestHelpers" />
|
<Compile Include="$(KestrelSharedSourceRoot)test\TransportTestHelpers\*.cs" LinkBase="shared\TransportTestHelpers" />
|
||||||
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(KestrelSharedSourceRoot)test\TestCertificates\*.pfx" LinkBase="shared\TestCertificates" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.AspNetCore.Server.Kestrel" />
|
<Reference Include="Microsoft.AspNetCore.Server.Kestrel" />
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="..\..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
<Compile Include="..\BindTests\**\*.cs" />
|
<Compile Include="..\BindTests\**\*.cs" />
|
||||||
<Compile Include="..\Sockets.FunctionalTests\TransportSelector.cs" />
|
<Compile Include="..\Sockets.FunctionalTests\TransportSelector.cs" />
|
||||||
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
<Compile Include="$(SharedSourceRoot)NullScope.cs" />
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ using System.Runtime.InteropServices;
|
||||||
using System.Security.Cryptography;
|
using System.Security.Cryptography;
|
||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using Microsoft.AspNetCore.Testing.xunit;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
using Xunit.Abstractions;
|
using Xunit.Abstractions;
|
||||||
|
|
||||||
|
|
@ -107,7 +108,8 @@ namespace Microsoft.AspNetCore.Certificates.Generation.Tests
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[ConditionalFact]
|
||||||
|
[SkipOnHelix] // https://github.com/aspnet/AspNetCore/issues/6721
|
||||||
public void EnsureCreateHttpsCertificate2_CreatesACertificate_WhenThereAreNoHttpsCertificates()
|
public void EnsureCreateHttpsCertificate2_CreatesACertificate_WhenThereAreNoHttpsCertificates()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.AspNetCore.DeveloperCertificates.XPlat" />
|
<Reference Include="Microsoft.AspNetCore.DeveloperCertificates.XPlat" />
|
||||||
|
<Compile Include="..\..\..\..\test\xunit\SkipOnHelixAttribute.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
<AssemblyName>Microsoft.DotNet.Watcher.Tools.Tests</AssemblyName>
|
<AssemblyName>Microsoft.DotNet.Watcher.Tools.Tests</AssemblyName>
|
||||||
<DefaultItemExcludes>$(DefaultItemExcludes);TestProjects\**\*</DefaultItemExcludes>
|
<DefaultItemExcludes>$(DefaultItemExcludes);TestProjects\**\*</DefaultItemExcludes>
|
||||||
<TestGroupName>DotNetWatcherToolsTests</TestGroupName>
|
<TestGroupName>DotNetWatcherToolsTests</TestGroupName>
|
||||||
|
<!-- https://github.com/aspnet/AspNetCore/issues/6549 -->
|
||||||
|
<BuildHelixPayload>false</BuildHelixPayload>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
<Project DefaultTargets="Test">
|
||||||
|
|
||||||
|
<!-- Version included until we get global.json generation to support this SDK. -->
|
||||||
|
<Sdk Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19073.6" />
|
||||||
|
|
||||||
|
<Target Name="Gather" BeforeTargets="Test">
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectsToTest Include="$(ProjectsToTest)" />
|
||||||
|
</ItemGroup>
|
||||||
|
<MSBuild Projects="@(ProjectsToTest)"
|
||||||
|
Targets="CreateHelixPayload"
|
||||||
|
BuildInParallel="true">
|
||||||
|
<Output TaskParameter="TargetOutputs" ItemName="HelixPayload" />
|
||||||
|
</MSBuild>
|
||||||
|
<ItemGroup>
|
||||||
|
<HelixWorkItem Include="%(HelixPayload.TestName)">
|
||||||
|
<Command>%(HelixPayload.Command)</Command>
|
||||||
|
<PayloadDirectory>%(HelixPayload.Identity)</PayloadDirectory>
|
||||||
|
<Timeout>%(HelixPayload.TestTimeout)</Timeout>
|
||||||
|
</HelixWorkItem>
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<!-- helix SDK issue https://github.com/dotnet/arcade/issues/1605 -->
|
||||||
|
<SkipInvalidConfigurations>true</SkipInvalidConfigurations>
|
||||||
|
<HelixSource>pr/aspnet/aspnetcore</HelixSource>
|
||||||
|
<HelixType>ci</HelixType>
|
||||||
|
<HelixBuild>private-$(USERNAME)</HelixBuild>
|
||||||
|
<HelixBuild Condition=" '$(USERNAME)' == '' ">private-$(USER)</HelixBuild>
|
||||||
|
<HelixBuild Condition=" '$(CI)' == 'true' ">$(BUILD_BUILDNUMBER)</HelixBuild>
|
||||||
|
<WaitForWorkItemCompletion>true</WaitForWorkItemCompletion>
|
||||||
|
<FailOnMissionControlTestFailure>true</FailOnMissionControlTestFailure>
|
||||||
|
<EnableAzurePipelinesReporter>false</EnableAzurePipelinesReporter>
|
||||||
|
<IsExternal>true</IsExternal>
|
||||||
|
<Creator>aspnetcore</Creator>
|
||||||
|
|
||||||
|
<HelixTargetQueues>
|
||||||
|
Windows.10.Amd64.ClientRS4.VS2017.Open;
|
||||||
|
OSX.1012.Amd64.Open;
|
||||||
|
Ubuntu.1810.Amd64.Open;
|
||||||
|
Ubuntu.1604.Amd64.Open;
|
||||||
|
Centos.7.Amd64.Open;
|
||||||
|
Debian.8.Amd64.Open;
|
||||||
|
Debian.9.Amd64.Open;
|
||||||
|
Fedora.27.Amd64.Open;
|
||||||
|
Fedora.28.Amd64.Open;
|
||||||
|
Redhat.7.Amd64.Open;
|
||||||
|
</HelixTargetQueues>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
set target=%1
|
||||||
|
set sdkVersion=%2
|
||||||
|
set runtimeVersion=%3
|
||||||
|
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Version %sdkVersion% -InstallDir %HELIX_CORRELATION_PAYLOAD%\sdk"
|
||||||
|
powershell.exe -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1'))) -Runtime dotnet -Version %runtimeVersion% -InstallDir %HELIX_CORRELATION_PAYLOAD%\sdk"
|
||||||
|
set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
||||||
|
set DOTNET_ROOT="$HELIX_CORRELATION_PAYLOAD/sdk"
|
||||||
|
set PATH="$DOTNET_ROOT:$PATH"
|
||||||
|
set DOTNET_MULTILEVEL_LOOKUP=0
|
||||||
|
set DOTNET_CLI_HOME="$HELIX_CORRELATION_PAYLOAD/home"
|
||||||
|
set helix=true
|
||||||
|
%HELIX_CORRELATION_PAYLOAD%\sdk\dotnet vstest %target% --logger:trx
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
curl -o dotnet-install.sh -sSL https://dot.net/v1/dotnet-install.sh
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
download_retries=3
|
||||||
|
while [ $download_retries -gt 0 ]; do
|
||||||
|
curl -sSL https://dot.net/v1/dotnet-install.sh
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
let download_retries=download_retries-1
|
||||||
|
echo -e "${YELLOW}Failed to download dotnet-install.sh. Retries left: $download_retries.${RESET}"
|
||||||
|
else
|
||||||
|
download_retries=0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Call "sync" between "chmod" and execution to prevent "text file busy" error in Docker (aufs)
|
||||||
|
chmod +x "dotnet-install.sh"; sync
|
||||||
|
|
||||||
|
./dotnet-install.sh --version $2 --install-dir $HELIX_CORRELATION_PAYLOAD/sdk
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
sdk_retries=3
|
||||||
|
while [ $sdk_retries -gt 0 ]; do
|
||||||
|
./dotnet-install.sh --version $2 --install-dir $HELIX_CORRELATION_PAYLOAD/sdk
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
let sdk_retries=sdk_retries-1
|
||||||
|
echo -e "${YELLOW}Failed to install .NET Core SDK $version. Retries left: $sdk_retries.${RESET}"
|
||||||
|
else
|
||||||
|
sdk_retries=0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
./dotnet-install.sh --runtime dotnet --version $3 --install-dir $HELIX_CORRELATION_PAYLOAD/sdk
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
runtime_retries=3
|
||||||
|
while [ $runtime_retries -gt 0 ]; do
|
||||||
|
./dotnet-install.sh --runtime dotnet --version $3 --install-dir $HELIX_CORRELATION_PAYLOAD/sdk
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
let runtime_retries=runtime_retries-1
|
||||||
|
echo -e "${YELLOW}Failed to install .NET Core runtime $version. Retries left: $runtime_retries.${RESET}"
|
||||||
|
else
|
||||||
|
runtime_retries=0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
||||||
|
|
||||||
|
# Ensures every invocation of dotnet apps uses the same dotnet.exe
|
||||||
|
export DOTNET_ROOT="$HELIX_CORRELATION_PAYLOAD/sdk"
|
||||||
|
|
||||||
|
# Ensure dotnet comes first on PATH
|
||||||
|
export PATH="$DOTNET_ROOT:$PATH"
|
||||||
|
|
||||||
|
# Prevent fallback to global .NET locations. This ensures our tests use the shared frameworks we specify and don't rollforward to something else that might be installed on the machine
|
||||||
|
export DOTNET_MULTILEVEL_LOOKUP=0
|
||||||
|
|
||||||
|
# Avoid contaminating userprofiles
|
||||||
|
export DOTNET_CLI_HOME="$HELIX_CORRELATION_PAYLOAD/home"
|
||||||
|
|
||||||
|
export helix="true"
|
||||||
|
|
||||||
|
$HELIX_CORRELATION_PAYLOAD/sdk/dotnet vstest $1 --logger:trx
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Microsoft.AspNetCore.Testing.xunit
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Skip test if a given environment variable is not enabled. To enable the test, set environment variable
|
||||||
|
/// to "true" for the test process.
|
||||||
|
/// </summary>
|
||||||
|
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
|
||||||
|
public class SkipOnHelixAttribute : Attribute, ITestCondition
|
||||||
|
{
|
||||||
|
public bool IsMet
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return !string.Equals(Environment.GetEnvironmentVariable("helix"), "true", StringComparison.OrdinalIgnoreCase);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public string SkipReason
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return $"This test is skipped on helix";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
set target=%1
|
||||||
|
set helix=true
|
||||||
|
xunit.console.exe %target% -xml testResults.xml
|
||||||
Loading…
Reference in New Issue