linux-x64

This commit is contained in:
Mike Harder 2018-05-09 16:50:47 -07:00 committed by GitHub
parent a2a0d6e344
commit 24e5ef2c5a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 327 additions and 211 deletions

View File

@ -1,16 +1,33 @@
namespace AspNetCoreSdkTests
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
namespace AspNetCoreSdkTests
{
// https://docs.microsoft.com/en-us/dotnet/core/rid-catalog
public class RuntimeIdentifier
{
public static RuntimeIdentifier None = new RuntimeIdentifier() { Name = "none" };
public static RuntimeIdentifier Win_x64 = new RuntimeIdentifier() { Name = "win-x64" };
public static RuntimeIdentifier None = new RuntimeIdentifier() {
Name = "none",
OSPlatforms = new[] { OSPlatform.Linux, OSPlatform.OSX, OSPlatform.Windows, },
};
public static RuntimeIdentifier Win_x64 = new RuntimeIdentifier() {
Name = "win-x64",
OSPlatforms = new[] { OSPlatform.Windows, },
};
public static RuntimeIdentifier Linux_x64 = new RuntimeIdentifier() {
Name = "linux-x64",
OSPlatforms = new[] { OSPlatform.Linux, },
};
private RuntimeIdentifier() { }
public string Name { get; private set; }
public string RuntimeArgument => (this == None) ? string.Empty : $"--runtime {Name}";
public string Path => (this == None) ? string.Empty : Name;
public IEnumerable<OSPlatform> OSPlatforms { get; private set; }
public override string ToString() => Name;
}

View File

@ -3,6 +3,7 @@ using NUnit.Framework;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Runtime.InteropServices;
namespace AspNetCoreSdkTests
{
@ -47,7 +48,7 @@ namespace AspNetCoreSdkTests
Assert.AreEqual(HttpStatusCode.OK, template.HttpsResponseAfterExec.StatusCode);
}
public static IEnumerable<Template> RestoreData = new[]
private static IEnumerable<Template> _restoreTemplates = new[]
{
// Framework-dependent
Template.GetInstance<ClassLibraryTemplate>(NuGetPackageSource.None, RuntimeIdentifier.None),
@ -62,11 +63,10 @@ namespace AspNetCoreSdkTests
Template.GetInstance<ReactReduxTemplate>(NuGetPackageSource.None, RuntimeIdentifier.None),
Template.GetInstance<WebApiTemplate>(NuGetPackageSource.None, RuntimeIdentifier.None),
// Self-contained
// Self-contained, win-x64
// ClassLibrary does not require a package source, even for self-contained deployments
Template.GetInstance<ClassLibraryTemplate>(NuGetPackageSource.None, RuntimeIdentifier.Win_x64),
Template.GetInstance<ConsoleApplicationTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
// Offline restore currently not supported for RazorClassLibrary template (https://github.com/aspnet/Universe/issues/1123)
Template.GetInstance<RazorClassLibraryTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
Template.GetInstance<WebTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
Template.GetInstance<RazorTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
@ -75,22 +75,42 @@ namespace AspNetCoreSdkTests
Template.GetInstance<ReactTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
Template.GetInstance<ReactReduxTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
Template.GetInstance<WebApiTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Win_x64),
// Self-contained, linux-x64
Template.GetInstance<ClassLibraryTemplate>(NuGetPackageSource.None, RuntimeIdentifier.Linux_x64),
Template.GetInstance<ConsoleApplicationTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<RazorClassLibraryTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<WebTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<RazorTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<MvcTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<AngularTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<ReactTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<ReactReduxTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
Template.GetInstance<WebApiTemplate>(NuGetPackageSource.NuGetOrg, RuntimeIdentifier.Linux_x64),
};
public static IEnumerable<Template> BuildData => RestoreData;
public static IEnumerable<TestCaseData> RestoreData = _restoreTemplates.Select(t => new TestCaseData(t));
public static IEnumerable<Template> PublishData => BuildData;
public static IEnumerable<TestCaseData> BuildData => RestoreData;
public static IEnumerable<Template> RunData =
BuildData.
public static IEnumerable<TestCaseData> PublishData => BuildData;
public static IEnumerable<TestCaseData> RunData =
from tcd in BuildData
let t = (Template)tcd.Arguments[0]
// Only interested in verifying web applications
Where(t => t.Type == TemplateType.WebApplication).
where (t.Type == TemplateType.WebApplication)
// "dotnet run" is only relevant for framework-dependent apps
Where(t => t.RuntimeIdentifier == RuntimeIdentifier.None);
where (t.RuntimeIdentifier == RuntimeIdentifier.None)
select tcd;
public static IEnumerable<Template> ExecData =
PublishData.
public static IEnumerable<TestCaseData> ExecData =
from tcd in PublishData
let t = (Template)tcd.Arguments[0]
// Only interested in verifying web applications
Where(t => t.Type == TemplateType.WebApplication);
where (t.Type == TemplateType.WebApplication)
// Can only run framework-dependent apps and self-contained apps matching the current platform
let runnable = t.RuntimeIdentifier.OSPlatforms.Any(p => RuntimeInformation.IsOSPlatform(p))
select (runnable ? tcd : tcd.Ignore($"RuntimeIdentifier '{t.RuntimeIdentifier}' cannot be executed on this platform"));
}
}

View File

@ -23,7 +23,12 @@ namespace AspNetCoreSdkTests.Templates
{
Path.Combine("netcoreapp2.1", RuntimeIdentifier.Path, "host", $"{Name}.exe"),
}
}
},
{ RuntimeIdentifier.Linux_x64, () => new[]
{
Path.Combine("netcoreapp2.1", RuntimeIdentifier.Path, "host", $"{Name}"),
}
},
};
public override IEnumerable<string> ExpectedObjFilesAfterBuild =>
@ -39,21 +44,191 @@ namespace AspNetCoreSdkTests.Templates
$"{Name}.runtimeconfig.json",
}.Select(p => Path.Combine(OutputPath, p))
},
{ RuntimeIdentifier.Win_x64, () =>
{ RuntimeIdentifier.Win_x64, () =>
_additionalBinFilesAfterBuild[RuntimeIdentifier.None]()
.Concat(new[]
.Concat(new[]
{
$"{Name}.exe",
"hostfxr.dll",
"hostpolicy.dll",
}.Select(p => Path.Combine(OutputPath, p)))
}
},
{ RuntimeIdentifier.Linux_x64, () =>
_additionalBinFilesAfterBuild[RuntimeIdentifier.None]()
.Concat(new[]
{
$"{Name}",
"libhostfxr.so",
"libhostpolicy.so",
}.Select(p => Path.Combine(OutputPath, p)))
},
};
public override IEnumerable<string> ExpectedBinFilesAfterBuild =>
base.ExpectedBinFilesAfterBuild
.Concat(_additionalBinFilesAfterBuild[RuntimeIdentifier]());
private Func<IEnumerable<string>> _additionalFilesAfterPublishCommon = () => new[]
{
"Microsoft.CSharp.dll",
"Microsoft.VisualBasic.dll",
// It may seem unusual to include Microsoft.Win32 assemblies in all platforms, but it appears to be by design
// https://github.com/dotnet/corefx/issues/14896
"Microsoft.Win32.Primitives.dll",
"Microsoft.Win32.Registry.dll",
"mscorlib.dll",
"netstandard.dll",
"System.AppContext.dll",
"System.Buffers.dll",
"System.Collections.Concurrent.dll",
"System.Collections.dll",
"System.Collections.Immutable.dll",
"System.Collections.NonGeneric.dll",
"System.Collections.Specialized.dll",
"System.ComponentModel.Annotations.dll",
"System.ComponentModel.DataAnnotations.dll",
"System.ComponentModel.dll",
"System.ComponentModel.EventBasedAsync.dll",
"System.ComponentModel.Primitives.dll",
"System.ComponentModel.TypeConverter.dll",
"System.Configuration.dll",
"System.Console.dll",
"System.Core.dll",
"System.Data.Common.dll",
"System.Data.dll",
"System.Diagnostics.Contracts.dll",
"System.Diagnostics.Debug.dll",
"System.Diagnostics.DiagnosticSource.dll",
"System.Diagnostics.FileVersionInfo.dll",
"System.Diagnostics.Process.dll",
"System.Diagnostics.StackTrace.dll",
"System.Diagnostics.TextWriterTraceListener.dll",
"System.Diagnostics.Tools.dll",
"System.Diagnostics.TraceSource.dll",
"System.Diagnostics.Tracing.dll",
"System.dll",
"System.Drawing.dll",
"System.Drawing.Primitives.dll",
"System.Dynamic.Runtime.dll",
"System.Globalization.Calendars.dll",
"System.Globalization.dll",
"System.Globalization.Extensions.dll",
"System.IO.Compression.Brotli.dll",
"System.IO.Compression.dll",
"System.IO.Compression.FileSystem.dll",
"System.IO.Compression.ZipFile.dll",
"System.IO.dll",
"System.IO.FileSystem.AccessControl.dll",
"System.IO.FileSystem.dll",
"System.IO.FileSystem.DriveInfo.dll",
"System.IO.FileSystem.Primitives.dll",
"System.IO.FileSystem.Watcher.dll",
"System.IO.IsolatedStorage.dll",
"System.IO.MemoryMappedFiles.dll",
"System.IO.Pipes.AccessControl.dll",
"System.IO.Pipes.dll",
"System.IO.UnmanagedMemoryStream.dll",
"System.Linq.dll",
"System.Linq.Expressions.dll",
"System.Linq.Parallel.dll",
"System.Linq.Queryable.dll",
"System.Memory.dll",
"System.Net.dll",
"System.Net.Http.dll",
"System.Net.HttpListener.dll",
"System.Net.Mail.dll",
"System.Net.NameResolution.dll",
"System.Net.NetworkInformation.dll",
"System.Net.Ping.dll",
"System.Net.Primitives.dll",
"System.Net.Requests.dll",
"System.Net.Security.dll",
"System.Net.ServicePoint.dll",
"System.Net.Sockets.dll",
"System.Net.WebClient.dll",
"System.Net.WebHeaderCollection.dll",
"System.Net.WebProxy.dll",
"System.Net.WebSockets.Client.dll",
"System.Net.WebSockets.dll",
"System.Numerics.dll",
"System.Numerics.Vectors.dll",
"System.ObjectModel.dll",
"System.Private.CoreLib.dll",
"System.Private.DataContractSerialization.dll",
"System.Private.Uri.dll",
"System.Private.Xml.dll",
"System.Private.Xml.Linq.dll",
"System.Reflection.DispatchProxy.dll",
"System.Reflection.dll",
"System.Reflection.Emit.dll",
"System.Reflection.Emit.ILGeneration.dll",
"System.Reflection.Emit.Lightweight.dll",
"System.Reflection.Extensions.dll",
"System.Reflection.Metadata.dll",
"System.Reflection.Primitives.dll",
"System.Reflection.TypeExtensions.dll",
"System.Resources.Reader.dll",
"System.Resources.ResourceManager.dll",
"System.Resources.Writer.dll",
"System.Runtime.CompilerServices.VisualC.dll",
"System.Runtime.dll",
"System.Runtime.Extensions.dll",
"System.Runtime.Handles.dll",
"System.Runtime.InteropServices.dll",
"System.Runtime.InteropServices.RuntimeInformation.dll",
"System.Runtime.InteropServices.WindowsRuntime.dll",
"System.Runtime.Loader.dll",
"System.Runtime.Numerics.dll",
"System.Runtime.Serialization.dll",
"System.Runtime.Serialization.Formatters.dll",
"System.Runtime.Serialization.Json.dll",
"System.Runtime.Serialization.Primitives.dll",
"System.Runtime.Serialization.Xml.dll",
"System.Security.AccessControl.dll",
"System.Security.Claims.dll",
"System.Security.Cryptography.Algorithms.dll",
"System.Security.Cryptography.Cng.dll",
"System.Security.Cryptography.Csp.dll",
"System.Security.Cryptography.Encoding.dll",
"System.Security.Cryptography.OpenSsl.dll",
"System.Security.Cryptography.Primitives.dll",
"System.Security.Cryptography.X509Certificates.dll",
"System.Security.dll",
"System.Security.Principal.dll",
"System.Security.Principal.Windows.dll",
"System.Security.SecureString.dll",
"System.ServiceModel.Web.dll",
"System.ServiceProcess.dll",
"System.Text.Encoding.dll",
"System.Text.Encoding.Extensions.dll",
"System.Text.RegularExpressions.dll",
"System.Threading.dll",
"System.Threading.Overlapped.dll",
"System.Threading.Tasks.Dataflow.dll",
"System.Threading.Tasks.dll",
"System.Threading.Tasks.Extensions.dll",
"System.Threading.Tasks.Parallel.dll",
"System.Threading.Thread.dll",
"System.Threading.ThreadPool.dll",
"System.Threading.Timer.dll",
"System.Transactions.dll",
"System.Transactions.Local.dll",
"System.ValueTuple.dll",
"System.Web.dll",
"System.Web.HttpUtility.dll",
"System.Windows.dll",
"System.Xml.dll",
"System.Xml.Linq.dll",
"System.Xml.ReaderWriter.dll",
"System.Xml.Serialization.dll",
"System.Xml.XDocument.dll",
"System.Xml.XmlDocument.dll",
"System.Xml.XmlSerializer.dll",
"System.Xml.XPath.dll",
"System.Xml.XPath.XDocument.dll",
"WindowsBase.dll",
};
private IDictionary<RuntimeIdentifier, Func<IEnumerable<string>>> _additionalFilesAfterPublish =>
new Dictionary<RuntimeIdentifier, Func<IEnumerable<string>>>()
{
@ -64,6 +239,7 @@ namespace AspNetCoreSdkTests.Templates
},
{ RuntimeIdentifier.Win_x64, () =>
_additionalFilesAfterPublish[RuntimeIdentifier.None]()
.Concat(_additionalFilesAfterPublishCommon())
.Concat(new[]
{
$"{Name}.exe",
@ -114,173 +290,50 @@ namespace AspNetCoreSdkTests.Templates
"dbgshim.dll",
"hostfxr.dll",
"hostpolicy.dll",
"Microsoft.CSharp.dll",
"Microsoft.DiaSymReader.Native.amd64.dll",
"Microsoft.VisualBasic.dll",
"Microsoft.Win32.Primitives.dll",
"Microsoft.Win32.Registry.dll",
"mscordaccore.dll",
"mscordaccore_amd64_amd64_4.6.26426.02.dll",
"mscordbi.dll",
"mscorlib.dll",
"mscorrc.debug.dll",
"mscorrc.dll",
"netstandard.dll",
"sos.dll",
"SOS.NETCore.dll",
"sos_amd64_amd64_4.6.26426.02.dll",
"System.AppContext.dll",
"System.Buffers.dll",
"System.Collections.Concurrent.dll",
"System.Collections.dll",
"System.Collections.Immutable.dll",
"System.Collections.NonGeneric.dll",
"System.Collections.Specialized.dll",
"System.ComponentModel.Annotations.dll",
"System.ComponentModel.DataAnnotations.dll",
"System.ComponentModel.dll",
"System.ComponentModel.EventBasedAsync.dll",
"System.ComponentModel.Primitives.dll",
"System.ComponentModel.TypeConverter.dll",
"System.Configuration.dll",
"System.Console.dll",
"System.Core.dll",
"System.Data.Common.dll",
"System.Data.dll",
"System.Diagnostics.Contracts.dll",
"System.Diagnostics.Debug.dll",
"System.Diagnostics.DiagnosticSource.dll",
"System.Diagnostics.FileVersionInfo.dll",
"System.Diagnostics.Process.dll",
"System.Diagnostics.StackTrace.dll",
"System.Diagnostics.TextWriterTraceListener.dll",
"System.Diagnostics.Tools.dll",
"System.Diagnostics.TraceSource.dll",
"System.Diagnostics.Tracing.dll",
"System.dll",
"System.Drawing.dll",
"System.Drawing.Primitives.dll",
"System.Dynamic.Runtime.dll",
"System.Globalization.Calendars.dll",
"System.Globalization.dll",
"System.Globalization.Extensions.dll",
"System.IO.Compression.Brotli.dll",
"System.IO.Compression.dll",
"System.IO.Compression.FileSystem.dll",
"System.IO.Compression.ZipFile.dll",
"System.IO.dll",
"System.IO.FileSystem.AccessControl.dll",
"System.IO.FileSystem.dll",
"System.IO.FileSystem.DriveInfo.dll",
"System.IO.FileSystem.Primitives.dll",
"System.IO.FileSystem.Watcher.dll",
"System.IO.IsolatedStorage.dll",
"System.IO.MemoryMappedFiles.dll",
"System.IO.Pipes.AccessControl.dll",
"System.IO.Pipes.dll",
"System.IO.UnmanagedMemoryStream.dll",
"System.Linq.dll",
"System.Linq.Expressions.dll",
"System.Linq.Parallel.dll",
"System.Linq.Queryable.dll",
"System.Memory.dll",
"System.Net.dll",
"System.Net.Http.dll",
"System.Net.HttpListener.dll",
"System.Net.Mail.dll",
"System.Net.NameResolution.dll",
"System.Net.NetworkInformation.dll",
"System.Net.Ping.dll",
"System.Net.Primitives.dll",
"System.Net.Requests.dll",
"System.Net.Security.dll",
"System.Net.ServicePoint.dll",
"System.Net.Sockets.dll",
"System.Net.WebClient.dll",
"System.Net.WebHeaderCollection.dll",
"System.Net.WebProxy.dll",
"System.Net.WebSockets.Client.dll",
"System.Net.WebSockets.dll",
"System.Numerics.dll",
"System.Numerics.Vectors.dll",
"System.ObjectModel.dll",
"System.Private.CoreLib.dll",
"System.Private.DataContractSerialization.dll",
"System.Private.Uri.dll",
"System.Private.Xml.dll",
"System.Private.Xml.Linq.dll",
"System.Reflection.DispatchProxy.dll",
"System.Reflection.dll",
"System.Reflection.Emit.dll",
"System.Reflection.Emit.ILGeneration.dll",
"System.Reflection.Emit.Lightweight.dll",
"System.Reflection.Extensions.dll",
"System.Reflection.Metadata.dll",
"System.Reflection.Primitives.dll",
"System.Reflection.TypeExtensions.dll",
"System.Resources.Reader.dll",
"System.Resources.ResourceManager.dll",
"System.Resources.Writer.dll",
"System.Runtime.CompilerServices.VisualC.dll",
"System.Runtime.dll",
"System.Runtime.Extensions.dll",
"System.Runtime.Handles.dll",
"System.Runtime.InteropServices.dll",
"System.Runtime.InteropServices.RuntimeInformation.dll",
"System.Runtime.InteropServices.WindowsRuntime.dll",
"System.Runtime.Loader.dll",
"System.Runtime.Numerics.dll",
"System.Runtime.Serialization.dll",
"System.Runtime.Serialization.Formatters.dll",
"System.Runtime.Serialization.Json.dll",
"System.Runtime.Serialization.Primitives.dll",
"System.Runtime.Serialization.Xml.dll",
"System.Security.AccessControl.dll",
"System.Security.Claims.dll",
"System.Security.Cryptography.Algorithms.dll",
"System.Security.Cryptography.Cng.dll",
"System.Security.Cryptography.Csp.dll",
"System.Security.Cryptography.Encoding.dll",
"System.Security.Cryptography.OpenSsl.dll",
"System.Security.Cryptography.Primitives.dll",
"System.Security.Cryptography.X509Certificates.dll",
"System.Security.dll",
"System.Security.Principal.dll",
"System.Security.Principal.Windows.dll",
"System.Security.SecureString.dll",
"System.ServiceModel.Web.dll",
"System.ServiceProcess.dll",
"System.Text.Encoding.dll",
"System.Text.Encoding.Extensions.dll",
"System.Text.RegularExpressions.dll",
"System.Threading.dll",
"System.Threading.Overlapped.dll",
"System.Threading.Tasks.Dataflow.dll",
"System.Threading.Tasks.dll",
"System.Threading.Tasks.Extensions.dll",
"System.Threading.Tasks.Parallel.dll",
"System.Threading.Thread.dll",
"System.Threading.ThreadPool.dll",
"System.Threading.Timer.dll",
"System.Transactions.dll",
"System.Transactions.Local.dll",
"System.ValueTuple.dll",
"System.Web.dll",
"System.Web.HttpUtility.dll",
"System.Windows.dll",
"System.Xml.dll",
"System.Xml.Linq.dll",
"System.Xml.ReaderWriter.dll",
"System.Xml.Serialization.dll",
"System.Xml.XDocument.dll",
"System.Xml.XmlDocument.dll",
"System.Xml.XmlSerializer.dll",
"System.Xml.XPath.dll",
"System.Xml.XPath.XDocument.dll",
"ucrtbase.dll",
"WindowsBase.dll",
})
}
},
{ RuntimeIdentifier.Linux_x64, () =>
_additionalFilesAfterPublish[RuntimeIdentifier.None]()
.Concat(_additionalFilesAfterPublishCommon())
.Concat(new[]
{
$"{Name}",
"createdump",
"libclrjit.so",
"libcoreclr.so",
"libcoreclrtraceptprovider.so",
"libdbgshim.so",
"libhostfxr.so",
"libhostpolicy.so",
"libmscordaccore.so",
"libmscordbi.so",
"libsos.so",
"libsosplugin.so",
"SOS.NETCore.dll",
"sosdocsunix.txt",
"System.Globalization.Native.so",
"System.IO.Compression.Native.a",
"System.IO.Compression.Native.so",
"System.Native.a",
"System.Native.so",
"System.Net.Http.Native.a",
"System.Net.Http.Native.so",
"System.Net.Security.Native.a",
"System.Net.Security.Native.so",
"System.Security.Cryptography.Native.OpenSsl.a",
"System.Security.Cryptography.Native.OpenSsl.so",
})
},
};
public override IEnumerable<string> ExpectedFilesAfterPublish =>

View File

@ -23,7 +23,14 @@ namespace AspNetCoreSdkTests.Templates
{
Path.Combine("netcoreapp2.1", RuntimeIdentifier.Path, "host", $"{Name}.exe"),
})
}
},
{ RuntimeIdentifier.Linux_x64, () =>
_additionalObjFilesAfterBuild[RuntimeIdentifier.None]()
.Concat(new[]
{
Path.Combine("netcoreapp2.1", RuntimeIdentifier.Path, "host", $"{Name}"),
})
},
};
public override IEnumerable<string> ExpectedObjFilesAfterBuild =>

View File

@ -143,7 +143,7 @@ namespace AspNetCoreSdkTests.Templates
Path.Combine("refs", "System.Xml.XPath.XDocument.dll"),
}.Select(p => Path.Combine(OutputPath, p)));
private IEnumerable<string> _commonAdditionalFilesAfterPublish = new[]
private IEnumerable<string> _additionalFilesAfterPublishCommon = new[]
{
"Microsoft.AspNetCore.Antiforgery.dll",
"Microsoft.AspNetCore.Authentication.Abstractions.dll",
@ -253,11 +253,43 @@ namespace AspNetCoreSdkTests.Templates
"System.Xml.XPath.XDocument.dll",
};
private IEnumerable<string> _additionalFilesAfterPublishSelfContained = new[]
{
"System.Collections.dll",
"System.Console.dll",
"System.Diagnostics.Debug.dll",
"System.Diagnostics.FileVersionInfo.dll",
"System.Diagnostics.Tools.dll",
"System.Diagnostics.Tracing.dll",
"System.Globalization.Calendars.dll",
"System.Globalization.dll",
"System.IO.Compression.dll",
"System.IO.dll",
"System.IO.FileSystem.dll",
"System.Reflection.dll",
"System.Reflection.Extensions.dll",
"System.Reflection.Primitives.dll",
"System.Resources.ResourceManager.dll",
"System.Runtime.dll",
"System.Runtime.Extensions.dll",
"System.Runtime.Handles.dll",
"System.Runtime.InteropServices.dll",
"System.Runtime.InteropServices.RuntimeInformation.dll",
"System.Security.Cryptography.Algorithms.dll",
"System.Security.Cryptography.Csp.dll",
"System.Security.Cryptography.Encoding.dll",
"System.Security.Cryptography.X509Certificates.dll",
"System.Text.Encoding.CodePages.dll",
"System.Text.Encoding.dll",
"System.Text.Encoding.Extensions.dll",
"System.Threading.Tasks.dll",
};
private IDictionary<RuntimeIdentifier, Func<IEnumerable<string>>> _additionalFilesAfterPublish =>
new Dictionary<RuntimeIdentifier, Func<IEnumerable<string>>>()
{
{ RuntimeIdentifier.None, () =>
_commonAdditionalFilesAfterPublish
_additionalFilesAfterPublishCommon
.Concat(new[]
{
Path.Combine("runtimes", "debian.8-x64", "native", "System.Security.Cryptography.Native.OpenSsl.so"),
@ -298,40 +330,21 @@ namespace AspNetCoreSdkTests.Templates
})
},
{ RuntimeIdentifier.Win_x64, () =>
_commonAdditionalFilesAfterPublish
_additionalFilesAfterPublishCommon
.Concat(_additionalFilesAfterPublishSelfContained)
.Concat(new[]
{
"System.Collections.dll",
"System.Console.dll",
"System.Diagnostics.Debug.dll",
"System.Diagnostics.FileVersionInfo.dll",
"System.Diagnostics.Tools.dll",
"System.Diagnostics.Tracing.dll",
"System.Globalization.Calendars.dll",
"System.Globalization.dll",
"System.IO.Compression.dll",
"System.IO.dll",
"System.IO.FileSystem.dll",
"System.Reflection.dll",
"System.Reflection.Extensions.dll",
"System.Reflection.Primitives.dll",
"System.Resources.ResourceManager.dll",
"System.Runtime.dll",
"System.Runtime.Extensions.dll",
"System.Runtime.Handles.dll",
"System.Runtime.InteropServices.dll",
"System.Runtime.InteropServices.RuntimeInformation.dll",
"System.Security.Cryptography.Algorithms.dll",
"System.Security.Cryptography.Csp.dll",
"System.Security.Cryptography.Encoding.dll",
"System.Security.Cryptography.X509Certificates.dll",
"System.Text.Encoding.CodePages.dll",
"System.Text.Encoding.dll",
"System.Text.Encoding.Extensions.dll",
"System.Threading.Overlapped.dll",
"System.Threading.Tasks.dll",
})
}
},
{ RuntimeIdentifier.Linux_x64, () =>
_additionalFilesAfterPublishCommon
.Concat(_additionalFilesAfterPublishSelfContained)
.Concat(new[]
{
"System.Private.Uri.dll",
})
},
};
public override IEnumerable<string> ExpectedFilesAfterPublish =>

View File

@ -33,6 +33,13 @@ namespace AspNetCoreSdkTests.Templates
}
},
{ RuntimeIdentifier.Win_x64, () =>
_additionalFilesAfterPublish[RuntimeIdentifier.Linux_x64]()
.Concat(new[]
{
"sni.dll",
})
},
{ RuntimeIdentifier.Linux_x64, () =>
_additionalFilesAfterPublish[RuntimeIdentifier.None]()
.Concat(new[]
{
@ -129,7 +136,6 @@ namespace AspNetCoreSdkTests.Templates
"Microsoft.CodeAnalysis.CSharp.dll",
"Microsoft.CodeAnalysis.dll",
"Microsoft.CodeAnalysis.Razor.dll",
"System.Data.SqlClient.dll",
"Microsoft.DotNet.PlatformAbstractions.dll",
"Microsoft.EntityFrameworkCore.Abstractions.dll",
"Microsoft.EntityFrameworkCore.Design.dll",
@ -190,7 +196,7 @@ namespace AspNetCoreSdkTests.Templates
"Newtonsoft.Json.Bson.dll",
"Newtonsoft.Json.dll",
"Remotion.Linq.dll",
"sni.dll",
"System.Data.SqlClient.dll",
"System.IdentityModel.Tokens.Jwt.dll",
"System.Interactive.Async.dll",
"System.IO.Pipelines.dll",
@ -204,7 +210,7 @@ namespace AspNetCoreSdkTests.Templates
"System.Text.Encodings.Web.dll",
"System.Threading.Channels.dll",
})
}
},
};
public override IEnumerable<string> ExpectedFilesAfterPublish =>