Fix LibraryImportGenerator.UnitTests.Compiles.ValidateSnippetsFallbackForwarder ...
authorElinor Fung <elfung@microsoft.com>
Mon, 16 May 2022 23:23:34 +0000 (16:23 -0700)
committerGitHub <noreply@github.com>
Mon, 16 May 2022 23:23:34 +0000 (16:23 -0700)
src/libraries/System.Runtime.InteropServices/tests/LibraryImportGenerator.UnitTests/CodeSnippets.cs

index 23fe53c..6494198 100644 (file)
@@ -337,6 +337,8 @@ partial class Test
 
         public static readonly string DisableRuntimeMarshalling = "[assembly:System.Runtime.CompilerServices.DisableRuntimeMarshalling]";
 
+        public static readonly string UsingSystemRuntimeInteropServicesMarshalling = "using System.Runtime.InteropServices.Marshalling;";
+
         /// <summary>
         /// Declaration with parameters with <see cref="StringMarshalling"/> set.
         /// </summary>
@@ -396,7 +398,6 @@ struct Native
         /// </summary>
         public static string BasicParametersAndModifiers(string typeName, string preDeclaration = "") => $@"
 using System.Runtime.InteropServices;
-using System.Runtime.InteropServices.Marshalling;
 {preDeclaration}
 partial class Test
 {{
@@ -742,7 +743,7 @@ struct Native
                 + NonBlittableUserDefinedType()
                 + NativeTypeOut;
 
-            public static string ParametersAndModifiers = BasicParametersAndModifiers("S")
+            public static string ParametersAndModifiers = BasicParametersAndModifiers("S", UsingSystemRuntimeInteropServicesMarshalling)
                 + NonBlittableUserDefinedType(defineNativeMarshalling: true)
                 + NativeTypeRef;
 
@@ -778,7 +779,7 @@ struct Native
     public S ToManaged() => new S { b = i != 0 };
 }
 ";
-            public static string OptionalStackallocParametersAndModifiers = BasicParametersAndModifiers("S")
+            public static string OptionalStackallocParametersAndModifiers = BasicParametersAndModifiers("S", UsingSystemRuntimeInteropServicesMarshalling)
                 + NonBlittableUserDefinedType() + @"
 [CustomTypeMarshaller(typeof(S), Features = CustomTypeMarshallerFeatures.CallerAllocatedBuffer, BufferSize = 1)]
 struct Native
@@ -809,7 +810,7 @@ struct Native
     public void FromNativeValue(int value) { }
 }
 ";
-            public static string TwoStageParametersAndModifiers = BasicParametersAndModifiers("S")
+            public static string TwoStageParametersAndModifiers = BasicParametersAndModifiers("S", UsingSystemRuntimeInteropServicesMarshalling)
                 + NonBlittableUserDefinedType() + @"
 [CustomTypeMarshaller(typeof(S), Features = CustomTypeMarshallerFeatures.TwoStageMarshalling)]
 struct Native
@@ -822,7 +823,7 @@ struct Native
     public void FromNativeValue(int value) { }
 }
 ";
-            public static string TwoStageRefReturn = BasicParametersAndModifiers("S")
+            public static string TwoStageRefReturn = BasicParametersAndModifiers("S", UsingSystemRuntimeInteropServicesMarshalling)
                 + NonBlittableUserDefinedType() + @"
 [CustomTypeMarshaller(typeof(S), Direction = CustomTypeMarshallerDirection.In, Features = CustomTypeMarshallerFeatures.TwoStageMarshalling)]
 unsafe struct Native
@@ -832,7 +833,7 @@ unsafe struct Native
     public ref byte ToNativeValue() => throw null;
 }
 ";
-            public static string PinnableParametersAndModifiers = BasicParametersAndModifiers("S") + @"
+            public static string PinnableParametersAndModifiers = BasicParametersAndModifiers("S", UsingSystemRuntimeInteropServicesMarshalling) + @"
 [NativeMarshalling(typeof(Native))]
 class S
 {