public void Compare_Returns_0_For_Same_MediaTypeHeaderValue() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeHeaderValue mediaType = new MediaTypeHeaderValue("text/xml"); Assert.AreEqual(0, comparer.Compare(mediaType, mediaType), "Compare should have returned '0'."); }
public void Compare_Returns_0_For_MediaTypeHeaderValues_With_Same_Q_Value() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeWithQualityHeaderValue mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", 0.5); MediaTypeWithQualityHeaderValue mediaType2 = new MediaTypeWithQualityHeaderValue("text/xml", 0.50); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", .7); mediaType2 = new MediaTypeWithQualityHeaderValue("application/xml", .7); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml"); mediaType2 = new MediaTypeWithQualityHeaderValue("text/xml"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml"); mediaType2 = new MediaTypeWithQualityHeaderValue("text/plain"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/*", 0.3); mediaType2 = new MediaTypeWithQualityHeaderValue("text/*", .3); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("*/*"); mediaType2 = new MediaTypeWithQualityHeaderValue("*/*"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/*", .1); mediaType2 = new MediaTypeWithQualityHeaderValue("application/xml", .1); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); }
public void Compare_Returns_Negative_1_If_MediaType1_Has_Larger_Q_Value() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeWithQualityHeaderValue mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", 0.51); MediaTypeWithQualityHeaderValue mediaType2 = new MediaTypeWithQualityHeaderValue("text/xml", 0.50); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", .7); mediaType2 = new MediaTypeWithQualityHeaderValue("application/xml", .0); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml"); mediaType2 = new MediaTypeWithQualityHeaderValue("text/xml", 0.9); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", 0.1); mediaType2 = new MediaTypeWithQualityHeaderValue("text/plain", 0); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("*/*", 0.31); mediaType2 = new MediaTypeWithQualityHeaderValue("text/*", .30); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("text/*", 0.6); mediaType2 = new MediaTypeWithQualityHeaderValue("*/*", 0.5); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); }
public void Comparer_Returns_MediaTypeHeadeValueComparer() { MediaTypeHeaderValueComparer comparer1 = MediaTypeHeaderValueComparer.Comparer; MediaTypeHeaderValueComparer comparer2 = MediaTypeHeaderValueComparer.Comparer; Assert.IsNotNull(comparer1, "MediaTypeHeaderValueComparer.Comparer should not have returned null."); Assert.AreSame(comparer1, comparer2, "MediaTypeHeaderValueComparer.Comparer should have returned the same instance both times."); }
public void Compare_Returns_0_For_MediaTypeHeaderValues_Differ_By_Non_Q_Parameters() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeHeaderValue mediaType1 = new MediaTypeHeaderValue("*/*"); mediaType1.CharSet = "someCharset"; mediaType1.Parameters.Add(new NameValueHeaderValue("someName", "someValue")); MediaTypeHeaderValue mediaType2 = new MediaTypeHeaderValue("*/*"); mediaType2.CharSet = "someOtherCharset"; mediaType2.Parameters.Add(new NameValueHeaderValue("someName", "someOtherValue")); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); }
public void Compare_Returns_0_For_MediaTypeHeaderValues_Differing_Only_By_Case() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeHeaderValue mediaType1 = new MediaTypeHeaderValue("text/Xml"); MediaTypeHeaderValue mediaType2 = new MediaTypeHeaderValue("texT/xml"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeHeaderValue("application/*"); mediaType2 = new MediaTypeHeaderValue("APPLICATION/*"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); mediaType1 = new MediaTypeHeaderValue("*/*"); mediaType2 = new MediaTypeHeaderValue("*/*"); Assert.AreEqual(0, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '0'."); }
public void Compare_Returns_Negative_1_If_Q_Value_Is_Same_But_MediaType2_Is_Media_Range() { MediaTypeHeaderValueComparer comparer = MediaTypeHeaderValueComparer.Comparer; MediaTypeWithQualityHeaderValue mediaType1 = new MediaTypeWithQualityHeaderValue("text/xml", 0.50); MediaTypeWithQualityHeaderValue mediaType2 = new MediaTypeWithQualityHeaderValue("text/*", 0.50); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("x/y"); mediaType2 = new MediaTypeWithQualityHeaderValue("*/*"); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("application/*", 0.2); mediaType2 = new MediaTypeWithQualityHeaderValue("*/*", 0.2); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); mediaType1 = new MediaTypeWithQualityHeaderValue("application/json", 0.2); mediaType1.CharSet = "someCharSet"; mediaType2 = new MediaTypeWithQualityHeaderValue("application/json", 0.2); Assert.AreEqual(-1, comparer.Compare(mediaType1, mediaType2), "Compare should have returned '-1'."); }