Skip to content

Commit 3921ba1

Browse files
committed
Fix ContentResultAssertions messages.
1 parent c7a2bb5 commit 3921ba1

File tree

4 files changed

+26
-6
lines changed

4 files changed

+26
-6
lines changed

src/FluentAssertions.AspNetCore.Mvc/ContentResultAssertions.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ public ContentResultAssertions WithContent(string expectedContent, string reason
3535
Execute.Assertion
3636
.ForCondition(string.Equals(actualContent, expectedContent, StringComparison.OrdinalIgnoreCase))
3737
.BecauseOf(reason, reasonArgs)
38-
.FailWith(string.Format(FailureMessages.CommonFailMessage, "ContentResult.Content", expectedContent, actualContent));
38+
.WithDefaultIdentifier("ContentResult.Content")
39+
.FailWith(FailureMessages.CommonFailMessage2, expectedContent, actualContent);
3940

4041
return this;
4142
}
@@ -58,7 +59,8 @@ public ContentResultAssertions WithContentType(string expectedContentType, strin
5859
Execute.Assertion
5960
.ForCondition(string.Equals(expectedContentType, actualContentType, StringComparison.OrdinalIgnoreCase))
6061
.BecauseOf(reason, reasonArgs)
61-
.FailWith(string.Format(FailureMessages.CommonFailMessage, "ContentResult.ContentType", expectedContentType, actualContentType));
62+
.WithDefaultIdentifier("ContentResult.ContentType")
63+
.FailWith(FailureMessages.CommonFailMessage2, expectedContentType, actualContentType);
6264

6365
return this;
6466
}

src/FluentAssertions.AspNetCore.Mvc/FailureMessages.Designer.cs

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/FluentAssertions.AspNetCore.Mvc/FailureMessages.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,9 @@
120120
<data name="CommonFailMessage" xml:space="preserve">
121121
<value>Expected {0} to be '{1}' but found '{2}'</value>
122122
</data>
123+
<data name="CommonFailMessage2" xml:space="preserve">
124+
<value>Expected {context} to be {0}{reason} but found {1}.</value>
125+
</data>
123126
<data name="CommonNullWasSuppliedFailMessage" xml:space="preserve">
124127
<value>Expected {0} to be of type {1}, but no {0} was supplied.</value>
125128
</data>

tests/FluentAssertions.AspNetCore.Mvc.Tests/ContentResultAssertions_Tests.cs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ public void WithContent_GivenUnexpected_ShouldFail()
2020
var actualContent = "content";
2121
var expectedContent = "xyz";
2222
ActionResult result = new ContentResult { Content = actualContent };
23-
var failureMessage = String.Format(FailureMessages.CommonFailMessage, "ContentResult.Content", expectedContent, actualContent);
23+
var failureMessage = ExpectedFailureMessage("ContentResult.Content", expectedContent, actualContent);
2424

25-
Action a = () => result.Should().BeContentResult().WithContent(expectedContent);
25+
Action a = () => result.Should().BeContentResult().WithContent(expectedContent, "it is {0}", 10);
2626

2727
a.Should().Throw<Exception>()
2828
.WithMessage(failureMessage);
@@ -41,12 +41,18 @@ public void WithContentType_GivenUnexpected_ShouldFail()
4141
var actualContentType = "text/html";
4242
var expectedContentType = "xyz";
4343
ActionResult result = new ContentResult { ContentType = actualContentType };
44-
var failureMessage = String.Format(FailureMessages.CommonFailMessage, "ContentResult.ContentType", expectedContentType, actualContentType);
44+
var failureMessage = ExpectedFailureMessage("ContentResult.ContentType", expectedContentType, actualContentType);
4545

46-
Action a = () => result.Should().BeContentResult().WithContentType(expectedContentType);
46+
Action a = () => result.Should().BeContentResult().WithContentType(expectedContentType, "it is {0}", 10);
4747

4848
a.Should().Throw<Exception>()
4949
.WithMessage(failureMessage);
5050
}
51+
52+
private string ExpectedFailureMessage(string context, string expected, string actual)
53+
{
54+
return $"Expected {context} to be \"{expected}\" because it is 10 but found \"{actual}\".";
55+
}
56+
5157
}
5258
}

0 commit comments

Comments
 (0)