public void Ctor_ClonesMediaType() { // Arrange MockMediaTypeFormatter formatter = new MockMediaTypeFormatter(); MediaTypeHeaderValue mediaType = MediaTypeHeaderValue.Parse("text/test"); // Act MediaTypeFormatterMatch match = new MediaTypeFormatterMatch(formatter, mediaType, null, MediaTypeFormatterMatchRanking.MatchOnCanWriteType); // Assert Assert.Equal(mediaType, match.MediaType); Assert.NotSame(mediaType, match.MediaType); }
public void Ctor_InitializesDefaultValues() { // Arrange MockMediaTypeFormatter formatter = new MockMediaTypeFormatter(); // Act MediaTypeFormatterMatch match = new MediaTypeFormatterMatch(formatter, null, null, MediaTypeFormatterMatchRanking.MatchOnCanWriteType); // Assert Assert.Same(formatter, match.Formatter); Assert.Equal(MediaTypeConstants.ApplicationOctetStreamMediaType, match.MediaType); Assert.Equal(FormattingUtilities.Match, match.Quality); Assert.Equal(MediaTypeFormatterMatchRanking.MatchOnCanWriteType, match.Ranking); }
/// <summary> /// Evaluates whether a match is better than the current match and if so returns the replacement; otherwise returns the /// current match. /// </summary> protected virtual MediaTypeFormatterMatch UpdateBestMatch(MediaTypeFormatterMatch current, MediaTypeFormatterMatch potentialReplacement) { if (potentialReplacement == null) { return current; } if (current != null) { return (potentialReplacement.Quality > current.Quality) ? potentialReplacement : current; } return potentialReplacement; }
public void UpdateBestMatch_SelectsCorrectly(MediaTypeFormatterMatch current, MediaTypeFormatterMatch replacement, bool currentWins) { // Arrange MockContentNegotiator negotiator = new MockContentNegotiator(); // Act MediaTypeFormatterMatch actualResult = negotiator.UpdateBestMatch(current, replacement); // Assert if (currentWins) { Assert.Same(current, actualResult); } else { Assert.Same(replacement, actualResult); } }
public void SelectResponseMediaTypeFormatter_SelectsMediaType(ICollection<MediaTypeFormatterMatch> matches, MediaTypeFormatterMatch expectedWinner) { // Arrange MockContentNegotiator negotiator = new MockContentNegotiator(); // Act MediaTypeFormatterMatch actualWinner = negotiator.SelectResponseMediaTypeFormatter(matches); // Assert Assert.Same(expectedWinner, actualWinner); }