@@ -112,7 +112,9 @@ public void Test_ReadOnlySpan2DT_Array1DConstructor()
112
112
Assert . AreEqual ( span2d [ 0 , 0 ] , 2 ) ;
113
113
Assert . AreEqual ( span2d [ 1 , 1 ] , 6 ) ;
114
114
115
- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 ] , 1 , 1 ) ) ;
115
+ // Same for ReadOnlyMemory2D<T>, we need to check that covariant array conversions are allowed
116
+ _ = new ReadOnlySpan2D < object > ( new string [ 1 ] , 1 , 1 ) ;
117
+
116
118
Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , - 99 , 1 , 1 , 1 ) ) ;
117
119
Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , 0 , - 10 , 1 , 1 ) ) ;
118
120
Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , 0 , 1 , 1 , - 1 ) ) ;
@@ -139,7 +141,7 @@ public void Test_ReadOnlySpan2DT_Array2DConstructor_1()
139
141
Assert . AreEqual ( span2d [ 0 , 1 ] , 2 ) ;
140
142
Assert . AreEqual ( span2d [ 1 , 2 ] , 6 ) ;
141
143
142
- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ) ;
144
+ _ = new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ;
143
145
}
144
146
145
147
[ TestCategory ( "ReadOnlySpan2DT" ) ]
@@ -161,7 +163,9 @@ public void Test_ReadOnlySpan2DT_Array2DConstructor_2()
161
163
Assert . AreEqual ( span2d [ 0 , 0 ] , 2 ) ;
162
164
Assert . AreEqual ( span2d [ 1 , 1 ] , 6 ) ;
163
165
164
- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] , 0 , 0 , 2 , 2 ) ) ;
166
+ _ = new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ;
167
+
168
+ Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] , 0 , 0 , 2 , 2 ) ) ;
165
169
}
166
170
167
171
[ TestCategory ( "ReadOnlySpan2DT" ) ]
0 commit comments