diff options
author | Mateo Torres-Ruiz <mateoatr@users.noreply.github.com> | 2021-05-25 00:52:47 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-25 00:52:47 +0300 |
commit | fa7e6d38408a7b46c8f1bbfd80c5a917990cedd6 (patch) | |
tree | 0bf6f88289a3db93008285e75533c22ec1a73e20 /test/Mono.Linker.Tests | |
parent | 4d4272649720a55279df925fd0f074ab414bbd31 (diff) |
Flow C++/CLI assemblies into the linker (#2042)
* Flow cppcli assemblies into the linker
* Add tests
* Add C++/CLI assembly
* Update docs/error-codes.md
Co-authored-by: Vitek Karas <vitek.karas@microsoft.com>
* PR feedback
* Change to copy action.
Co-authored-by: Vitek Karas <vitek.karas@microsoft.com>
Diffstat (limited to 'test/Mono.Linker.Tests')
-rw-r--r-- | test/Mono.Linker.Tests/TestCases/TestDatabase.cs | 150 | ||||
-rw-r--r-- | test/Mono.Linker.Tests/TestCases/TestSuites.cs | 163 |
2 files changed, 161 insertions, 152 deletions
diff --git a/test/Mono.Linker.Tests/TestCases/TestDatabase.cs b/test/Mono.Linker.Tests/TestCases/TestDatabase.cs index fcab71eb7..58c0b9205 100644 --- a/test/Mono.Linker.Tests/TestCases/TestDatabase.cs +++ b/test/Mono.Linker.Tests/TestCases/TestDatabase.cs @@ -11,14 +11,14 @@ namespace Mono.Linker.Tests.TestCases { private static TestCase[] _cachedAllCases; - public static IEnumerable<TestCaseData> XmlTests () + public static IEnumerable<TestCaseData> AdvancedTests () { - return NUnitCasesBySuiteName ("LinkXml"); + return NUnitCasesBySuiteName ("Advanced"); } - public static IEnumerable<TestCaseData> BasicTests () + public static IEnumerable<TestCaseData> AttributeDebuggerTests () { - return NUnitCasesBySuiteName ("Basic"); + return NUnitCasesBySuiteName ("Attributes.Debugger"); } public static IEnumerable<TestCaseData> AttributeTests () @@ -26,139 +26,134 @@ namespace Mono.Linker.Tests.TestCases return NUnitCasesBySuiteName ("Attributes"); } - public static IEnumerable<TestCaseData> AttributeDebuggerTests () - { - return NUnitCasesBySuiteName ("Attributes.Debugger"); - } - public static IEnumerable<TestCaseData> AttributesStructLayoutTests () { return NUnitCasesBySuiteName ("Attributes.StructLayout"); } - public static IEnumerable<TestCaseData> GenericsTests () + public static IEnumerable<TestCaseData> BCLFeaturesTests () { - return NUnitCasesBySuiteName ("Generics"); + return NUnitCasesBySuiteName ("BCLFeatures"); } - public static IEnumerable<TestCaseData> CoreLinkTests () + public static IEnumerable<TestCaseData> BasicTests () { - return NUnitCasesBySuiteName ("CoreLink"); + return NUnitCasesBySuiteName ("Basic"); } - public static IEnumerable<TestCaseData> StaticsTests () + public static IEnumerable<TestCaseData> CodegenAnnotationTests () { - return NUnitCasesBySuiteName ("Statics"); + return NUnitCasesBySuiteName ("CodegenAnnotation"); } - public static IEnumerable<TestCaseData> InteropTests () + public static IEnumerable<TestCaseData> CommandLineTests () { - return NUnitCasesBySuiteName ("Interop"); + return NUnitCasesBySuiteName ("CommandLine"); } - public static IEnumerable<TestCaseData> ReferencesTests () + public static IEnumerable<TestCaseData> ComponentModelTests () { - return NUnitCasesBySuiteName ("References"); + return NUnitCasesBySuiteName ("ComponentModel"); } - public static IEnumerable<TestCaseData> ResourcesTests () + public static IEnumerable<TestCaseData> CoreLinkTests () { - return NUnitCasesBySuiteName ("Resources"); + return NUnitCasesBySuiteName ("CoreLink"); } - public static IEnumerable<TestCaseData> TypeForwardingTests () + public static IEnumerable<TestCaseData> CppCLITests () { - return NUnitCasesBySuiteName ("TypeForwarding"); + return NUnitCasesBySuiteName ("CppCLI"); } - public static IEnumerable<TestCaseData> TestFrameworkTests () + public static IEnumerable<TestCaseData> DataFlowTests () { - return NUnitCasesBySuiteName ("TestFramework"); + return NUnitCasesBySuiteName ("DataFlow"); } - public static IEnumerable<TestCaseData> ReflectionTests () + public static IEnumerable<TestCaseData> DynamicDependenciesTests () { - return NUnitCasesBySuiteName ("Reflection"); + return NUnitCasesBySuiteName ("DynamicDependencies"); } - public static IEnumerable<TestCaseData> ComponentModelTests () + public static IEnumerable<TestCaseData> ExtensibilityTests () { - return NUnitCasesBySuiteName ("ComponentModel"); + return NUnitCasesBySuiteName ("Extensibility"); } - public static IEnumerable<TestCaseData> SymbolsTests () + public static IEnumerable<TestCaseData> FeatureSettingsTests () { - return NUnitCasesBySuiteName ("Symbols"); + return NUnitCasesBySuiteName ("FeatureSettings"); } - public static IEnumerable<TestCaseData> PreserveDependenciesTests () + public static IEnumerable<TestCaseData> GenericsTests () { - return NUnitCasesBySuiteName ("PreserveDependencies"); + return NUnitCasesBySuiteName ("Generics"); } - public static IEnumerable<TestCaseData> DynamicDependenciesTests () + public static IEnumerable<TestCaseData> InheritanceAbstractClassTests () { - return NUnitCasesBySuiteName ("DynamicDependencies"); + return NUnitCasesBySuiteName ("Inheritance.AbstractClasses"); } - public static IEnumerable<TestCaseData> LibrariesTests () + public static IEnumerable<TestCaseData> InheritanceComplexTests () { - return NUnitCasesBySuiteName ("Libraries"); + return NUnitCasesBySuiteName ("Inheritance.Complex"); } - public static IEnumerable<TestCaseData> AdvancedTests () + public static IEnumerable<TestCaseData> InheritanceInterfaceTests () { - return NUnitCasesBySuiteName ("Advanced"); + return NUnitCasesBySuiteName ("Inheritance.Interfaces"); } - public static IEnumerable<TestCaseData> InheritanceInterfaceTests () + public static IEnumerable<TestCaseData> InheritanceVirtualMethodsTests () { - return NUnitCasesBySuiteName ("Inheritance.Interfaces"); + return NUnitCasesBySuiteName ("Inheritance.VirtualMethods"); } - public static IEnumerable<TestCaseData> InheritanceAbstractClassTests () + public static IEnumerable<TestCaseData> InteropTests () { - return NUnitCasesBySuiteName ("Inheritance.AbstractClasses"); + return NUnitCasesBySuiteName ("Interop"); } - public static IEnumerable<TestCaseData> InheritanceVirtualMethodsTests () + public static IEnumerable<TestCaseData> LibrariesTests () { - return NUnitCasesBySuiteName ("Inheritance.VirtualMethods"); + return NUnitCasesBySuiteName ("Libraries"); } - public static IEnumerable<TestCaseData> InheritanceComplexTests () + public static IEnumerable<TestCaseData> LinkAttributesTests () { - return NUnitCasesBySuiteName ("Inheritance.Complex"); + return NUnitCasesBySuiteName ("LinkAttributes"); } - public static IEnumerable<TestCaseData> BCLFeaturesTests () + public static IEnumerable<TestCaseData> LoggingTests () { - return NUnitCasesBySuiteName ("BCLFeatures"); + return NUnitCasesBySuiteName ("Logging"); } - public static IEnumerable<TestCaseData> CommandLineTests () + public static IEnumerable<TestCaseData> PreserveDependenciesTests () { - return NUnitCasesBySuiteName ("CommandLine"); + return NUnitCasesBySuiteName ("PreserveDependencies"); } - public static IEnumerable<TestCaseData> UnreachableBodyTests () + public static IEnumerable<TestCaseData> ReferencesTests () { - return NUnitCasesBySuiteName ("UnreachableBody"); + return NUnitCasesBySuiteName ("References"); } - public static IEnumerable<TestCaseData> WarningsTests () + public static IEnumerable<TestCaseData> ReflectionTests () { - return NUnitCasesBySuiteName ("Warnings"); + return NUnitCasesBySuiteName ("Reflection"); } - public static IEnumerable<TestCaseData> CodegenAnnotationTests () + public static IEnumerable<TestCaseData> RequiresCapabilityTests () { - return NUnitCasesBySuiteName ("CodegenAnnotation"); + return NUnitCasesBySuiteName ("RequiresCapability"); } - public static IEnumerable<TestCaseData> UnreachableBlockTests () + public static IEnumerable<TestCaseData> ResourcesTests () { - return NUnitCasesBySuiteName ("UnreachableBlock"); + return NUnitCasesBySuiteName ("Resources"); } public static IEnumerable<TestCaseData> SealerTests () @@ -171,45 +166,54 @@ namespace Mono.Linker.Tests.TestCases return NUnitCasesBySuiteName ("Serialization"); } + public static IEnumerable<TestCaseData> StaticsTests () + { + return NUnitCasesBySuiteName ("Statics"); + } + public static IEnumerable<TestCaseData> SubstitutionsTests () { return NUnitCasesBySuiteName ("Substitutions"); } - public static IEnumerable<TestCaseData> TracingTests () + public static IEnumerable<TestCaseData> SymbolsTests () { - return NUnitCasesBySuiteName ("Tracing"); + return NUnitCasesBySuiteName ("Symbols"); } + public static IEnumerable<TestCaseData> TestFrameworkTests () + { + return NUnitCasesBySuiteName ("TestFramework"); + } - public static IEnumerable<TestCaseData> DataFlowTests () + public static IEnumerable<TestCaseData> TracingTests () { - return NUnitCasesBySuiteName ("DataFlow"); + return NUnitCasesBySuiteName ("Tracing"); } - public static IEnumerable<TestCaseData> RequiresCapabilityTests () + public static IEnumerable<TestCaseData> TypeForwardingTests () { - return NUnitCasesBySuiteName ("RequiresCapability"); + return NUnitCasesBySuiteName ("TypeForwarding"); } - public static IEnumerable<TestCaseData> LoggingTests () + public static IEnumerable<TestCaseData> UnreachableBlockTests () { - return NUnitCasesBySuiteName ("Logging"); + return NUnitCasesBySuiteName ("UnreachableBlock"); } - public static IEnumerable<TestCaseData> ExtensibilityTests () + public static IEnumerable<TestCaseData> UnreachableBodyTests () { - return NUnitCasesBySuiteName ("Extensibility"); + return NUnitCasesBySuiteName ("UnreachableBody"); } - public static IEnumerable<TestCaseData> FeatureSettingsTests () + public static IEnumerable<TestCaseData> WarningsTests () { - return NUnitCasesBySuiteName ("FeatureSettings"); + return NUnitCasesBySuiteName ("Warnings"); } - public static IEnumerable<TestCaseData> LinkAttributesTests () + public static IEnumerable<TestCaseData> XmlTests () { - return NUnitCasesBySuiteName ("LinkAttributes"); + return NUnitCasesBySuiteName ("LinkXml"); } public static IEnumerable<TestCaseData> MetadataTests () diff --git a/test/Mono.Linker.Tests/TestCases/TestSuites.cs b/test/Mono.Linker.Tests/TestCases/TestSuites.cs index 3860cccbc..09de355e6 100644 --- a/test/Mono.Linker.Tests/TestCases/TestSuites.cs +++ b/test/Mono.Linker.Tests/TestCases/TestSuites.cs @@ -7,20 +7,20 @@ namespace Mono.Linker.Tests.TestCases [TestFixture] public class All { - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.BasicTests))] - public void BasicTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AdvancedTests))] + public void AdvancedTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AdvancedTests))] - public void AdvancedTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AttributeDebuggerTests))] + public void AttributesDebuggerTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.XmlTests))] - public void XmlTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AttributesStructLayoutTests))] + public void AttributesStructLayoutTests (TestCase testCase) { Run (testCase); } @@ -31,26 +31,38 @@ namespace Mono.Linker.Tests.TestCases Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AttributeDebuggerTests))] - public void AttributesDebuggerTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.BCLFeaturesTests))] + public void BCLFeaturesTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.AttributesStructLayoutTests))] - public void AttributesStructLayoutTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.BasicTests))] + public void BasicTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.GenericsTests))] - public void GenericsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.CodegenAnnotationTests))] + public void CodegenAnnotationTests (TestCase testCase) { + if (Environment.OSVersion.Platform == PlatformID.Win32NT) + Assert.Ignore ("These tests are not valid when linking against .NET Framework"); + +#if NETCOREAPP + Assert.Ignore ("These tests are not valid when linking against .NET Core"); +#endif Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.StaticsTests))] - public void StaticsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.CommandLineTests))] + public void CommandLineTests (TestCase testCase) + { + Run (testCase); + } + + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ComponentModelTests))] + public void ComponentModelTests (TestCase testCase) { Run (testCase); } @@ -61,68 +73,68 @@ namespace Mono.Linker.Tests.TestCases Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InteropTests))] - public void InteropTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.CppCLITests))] + public void CppCLITests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ReferencesTests))] - public void ReferencesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.DataFlowTests))] + public void DataFlowTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ResourcesTests))] - public void ResourcesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.DynamicDependenciesTests))] + public void DynamicDependenciesTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TypeForwardingTests))] - public void TypeForwardingTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ExtensibilityTests))] + public void ExtensibilityTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.LoggingTests))] - public void LoggingTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.FeatureSettingsTests))] + public void FeatureSettingsTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TestFrameworkTests))] - public void TestFrameworkTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.GenericsTests))] + public void GenericsTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ReflectionTests))] - public void ReflectionTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceAbstractClassTests))] + public void InheritanceAbstractClassTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ComponentModelTests))] - public void ComponentModelTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceComplexTests))] + public void InheritanceComplexTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.PreserveDependenciesTests))] - public void PreserveDependenciesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceInterfaceTests))] + public void InheritanceInterfaceTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.DynamicDependenciesTests))] - public void DynamicDependenciesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceVirtualMethodsTests))] + public void InheritanceVirtualMethodsTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SymbolsTests))] - public void SymbolsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InteropTests))] + public void InteropTests (TestCase testCase) { Run (testCase); } @@ -133,68 +145,62 @@ namespace Mono.Linker.Tests.TestCases Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceInterfaceTests))] - public void InheritanceInterfaceTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.LinkAttributesTests))] + public void LinkAttributesTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceAbstractClassTests))] - public void InheritanceAbstractClassTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.LoggingTests))] + public void LoggingTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceVirtualMethodsTests))] - public void InheritanceVirtualMethodsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.PreserveDependenciesTests))] + public void PreserveDependenciesTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.InheritanceComplexTests))] - public void InheritanceComplexTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ReferencesTests))] + public void ReferencesTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.BCLFeaturesTests))] - public void BCLFeaturesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ReflectionTests))] + public void ReflectionTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.CommandLineTests))] - public void CommandLineTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.RequiresCapabilityTests))] + public void RequiresCapabilityTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.CodegenAnnotationTests))] - public void CodegenAnnotationTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ResourcesTests))] + public void ResourcesTests (TestCase testCase) { - if (Environment.OSVersion.Platform == PlatformID.Win32NT) - Assert.Ignore ("These tests are not valid when linking against .NET Framework"); - -#if NETCOREAPP - Assert.Ignore ("These tests are not valid when linking against .NET Core"); -#endif Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.UnreachableBodyTests))] - public void UnreachableBodyTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SealerTests))] + public void SealerTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.WarningsTests))] - public void WarningsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SerializationTests))] + public void SerializationTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.UnreachableBlockTests))] - public void UnreachableBlockTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.StaticsTests))] + public void StaticsTests (TestCase testCase) { Run (testCase); } @@ -205,51 +211,50 @@ namespace Mono.Linker.Tests.TestCases Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TracingTests))] - public void TracingTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SymbolsTests))] + public void SymbolsTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SealerTests))] - public void SealerTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TestFrameworkTests))] + public void TestFrameworkTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.SerializationTests))] - public void SerializationTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TracingTests))] + public void TracingTests (TestCase testCase) { Run (testCase); } - - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.ExtensibilityTests))] - public void ExtensibilityTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.TypeForwardingTests))] + public void TypeForwardingTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.FeatureSettingsTests))] - public void FeatureSettingsTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.UnreachableBlockTests))] + public void UnreachableBlockTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.DataFlowTests))] - public void DataFlowTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.UnreachableBodyTests))] + public void UnreachableBodyTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.RequiresCapabilityTests))] - public void RequiresCapabilityTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.WarningsTests))] + public void WarningsTests (TestCase testCase) { Run (testCase); } - [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.LinkAttributesTests))] - public void LinkAttributesTests (TestCase testCase) + [TestCaseSource (typeof (TestDatabase), nameof (TestDatabase.XmlTests))] + public void XmlTests (TestCase testCase) { Run (testCase); } |