@@ -99,6 +99,52 @@ public void Equals_UseSameAndDifferentETags_EqualOrNotEqualNoExceptions()
99
99
Assert . True ( etag1 . Equals ( etag5 ) , "tag vs. tag.." ) ;
100
100
}
101
101
102
+ [ Fact ]
103
+ public void CompareStrongly_UseSameAndDifferentETags_EqualOrNotEqualNoExceptions ( )
104
+ {
105
+ var etag1 = new EntityTagHeaderValue ( "\" tag\" " ) ;
106
+ var etag2 = new EntityTagHeaderValue ( "\" TAG\" " ) ;
107
+ var etag3 = new EntityTagHeaderValue ( "\" tag\" " , true ) ;
108
+ var etag4 = new EntityTagHeaderValue ( "\" tag1\" " ) ;
109
+ var etag5 = new EntityTagHeaderValue ( "\" tag\" " ) ;
110
+ var etag6 = EntityTagHeaderValue . Any ;
111
+
112
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag1 , etag2 ) , "Different casing." ) ;
113
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag2 , etag1 ) , "Different casing." ) ;
114
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag1 , null ) , "tag vs. <null>." ) ;
115
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( null , etag1 ) , "<null> vs tag." ) ;
116
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( null , null ) , "<null> vs. <null>." ) ;
117
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag3 , etag3 ) , "weak vs. weak." ) ;
118
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag1 , etag3 ) , "strong vs. weak." ) ;
119
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag3 , etag1 ) , "weak vs. strong." ) ;
120
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag1 , etag4 ) , "tag vs. tag1." ) ;
121
+ Assert . False ( EntityTagHeaderValue . CompareStrongly ( etag1 , etag6 ) , "tag vs. *." ) ;
122
+ Assert . True ( EntityTagHeaderValue . CompareStrongly ( etag1 , etag5 ) , "tag vs. tag." ) ;
123
+ }
124
+
125
+ [ Fact ]
126
+ public void CompareWeakly_UseSameAndDifferentETags_EqualOrNotEqualNoExceptions ( )
127
+ {
128
+ var etag1 = new EntityTagHeaderValue ( "\" tag\" " ) ;
129
+ var etag2 = new EntityTagHeaderValue ( "\" TAG\" " ) ;
130
+ var etag3 = new EntityTagHeaderValue ( "\" tag\" " , true ) ;
131
+ var etag4 = new EntityTagHeaderValue ( "\" tag1\" " ) ;
132
+ var etag5 = new EntityTagHeaderValue ( "\" tag\" " ) ;
133
+ var etag6 = EntityTagHeaderValue . Any ;
134
+
135
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( etag1 , etag2 ) , "Different casing." ) ;
136
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( etag2 , etag1 ) , "Different casing." ) ;
137
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( etag1 , null ) , "tag vs. <null>." ) ;
138
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( null , etag1 ) , "<null> vs tag." ) ;
139
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( null , null ) , "<null> vs. <null>." ) ;
140
+ Assert . True ( EntityTagHeaderValue . CompareWeakly ( etag3 , etag3 ) , "weak vs. weak." ) ;
141
+ Assert . True ( EntityTagHeaderValue . CompareWeakly ( etag1 , etag3 ) , "strong vs. weak." ) ;
142
+ Assert . True ( EntityTagHeaderValue . CompareWeakly ( etag3 , etag1 ) , "weak vs. strong." ) ;
143
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( etag1 , etag4 ) , "tag vs. tag1." ) ;
144
+ Assert . False ( EntityTagHeaderValue . CompareWeakly ( etag1 , etag6 ) , "tag vs. *." ) ;
145
+ Assert . True ( EntityTagHeaderValue . CompareWeakly ( etag1 , etag5 ) , "tag vs. tag." ) ;
146
+ }
147
+
102
148
[ Fact ]
103
149
public void Parse_SetOfValidValueStrings_ParsedCorrectly ( )
104
150
{
0 commit comments