@@ -1040,6 +1040,13 @@ public static void GetEnumerator_Generic_Invalid()
10401040 Assert . Throws < InvalidOperationException > ( ( ) => enumerator . Current ) ;
10411041 }
10421042
1043+ [ Fact ]
1044+ [ ActiveIssue ( 27098 , TargetFrameworkMonikers . NetFramework ) ]
1045+ public static void GetHashCode_EmbeddedNull_ReturnsDifferentHashCodes ( )
1046+ {
1047+ Assert . NotEqual ( "\0 AAAAAAAAA" . GetHashCode ( ) , "\0 BBBBBBBBBBBB" . GetHashCode ( ) ) ;
1048+ }
1049+
10431050 [ Theory ]
10441051 // CurrentCulture
10451052 [ InlineData ( "Hello" , "Hello" , StringComparison . CurrentCulture , true ) ]
@@ -1053,6 +1060,7 @@ public static void GetEnumerator_Generic_Invalid()
10531060 [ InlineData ( "" , "Hello" , StringComparison . CurrentCulture , false ) ]
10541061 [ InlineData ( "" , "" , StringComparison . CurrentCulture , true ) ]
10551062 [ InlineData ( "123" , 123 , StringComparison . CurrentCulture , false ) ] // Not a string
1063+ [ InlineData ( "\0 AAAAAAAAA" , "\0 BBBBBBBBBBBB" , StringComparison . CurrentCulture , false ) ]
10561064 // CurrentCultureIgnoreCase
10571065 [ InlineData ( "Hello" , "Hello" , StringComparison . CurrentCultureIgnoreCase , true ) ]
10581066 [ InlineData ( "Hello" , "hello" , StringComparison . CurrentCultureIgnoreCase , true ) ]
@@ -1065,6 +1073,7 @@ public static void GetEnumerator_Generic_Invalid()
10651073 [ InlineData ( "" , "Hello" , StringComparison . CurrentCultureIgnoreCase , false ) ]
10661074 [ InlineData ( "" , "" , StringComparison . CurrentCultureIgnoreCase , true ) ]
10671075 [ InlineData ( "123" , 123 , StringComparison . CurrentCultureIgnoreCase , false ) ] // Not a string
1076+ [ InlineData ( "\0 AAAAAAAAA" , "\0 BBBBBBBBBBBB" , StringComparison . CurrentCultureIgnoreCase , false ) ]
10681077 // InvariantCulture
10691078 [ InlineData ( "Hello" , "Hello" , StringComparison . InvariantCulture , true ) ]
10701079 [ InlineData ( "Hello" , "hello" , StringComparison . InvariantCulture , false ) ]
@@ -1076,7 +1085,8 @@ public static void GetEnumerator_Generic_Invalid()
10761085 [ InlineData ( "Hello" , "" , StringComparison . InvariantCulture , false ) ]
10771086 [ InlineData ( "" , "Hello" , StringComparison . InvariantCulture , false ) ]
10781087 [ InlineData ( "" , "" , StringComparison . InvariantCulture , true ) ]
1079- [ InlineData ( "123" , 123 , StringComparison . InvariantCultureIgnoreCase , false ) ] // Not a string
1088+ [ InlineData ( "123" , 123 , StringComparison . InvariantCulture , false ) ] // Not a string
1089+ [ InlineData ( "\0 AAAAAAAAA" , "\0 BBBBBBBBBBBB" , StringComparison . InvariantCulture , false ) ]
10801090 // InvariantCultureIgnoreCase
10811091 [ InlineData ( "Hello" , "Hello" , StringComparison . InvariantCultureIgnoreCase , true ) ]
10821092 [ InlineData ( "Hello" , "hello" , StringComparison . InvariantCultureIgnoreCase , true ) ]
@@ -1089,6 +1099,7 @@ public static void GetEnumerator_Generic_Invalid()
10891099 [ InlineData ( "" , "Hello" , StringComparison . InvariantCultureIgnoreCase , false ) ]
10901100 [ InlineData ( "" , "" , StringComparison . InvariantCultureIgnoreCase , true ) ]
10911101 [ InlineData ( "123" , 123 , StringComparison . InvariantCultureIgnoreCase , false ) ] // Not a string
1102+ [ InlineData ( "\0 AAAAAAAAA" , "\0 BBBBBBBBBBBB" , StringComparison . InvariantCultureIgnoreCase , false ) ]
10921103 // Ordinal
10931104 [ InlineData ( "Hello" , "Hello" , StringComparison . Ordinal , true ) ]
10941105 [ InlineData ( "Hello" , "hello" , StringComparison . Ordinal , false ) ]
@@ -1118,6 +1129,7 @@ public static void GetEnumerator_Generic_Invalid()
11181129 [ InlineData ( "" , "Hello" , StringComparison . OrdinalIgnoreCase , false ) ]
11191130 [ InlineData ( "" , "" , StringComparison . OrdinalIgnoreCase , true ) ]
11201131 [ InlineData ( "123" , 123 , StringComparison . OrdinalIgnoreCase , false ) ] // Not a string
1132+ [ InlineData ( "\0 AAAAAAAAA" , "\0 BBBBBBBBBBBB" , StringComparison . OrdinalIgnoreCase , false ) ]
11211133 public static void Equals ( string s1 , object obj , StringComparison comparisonType , bool expected )
11221134 {
11231135 string s2 = obj as string ;
0 commit comments