diff --git a/src/Cassette.Aspnet.UnitTests/PlaceholderRewriter.cs b/src/Cassette.Aspnet.UnitTests/PlaceholderRewriter.cs index 5a2482df..f2aeb84d 100644 --- a/src/Cassette.Aspnet.UnitTests/PlaceholderRewriter.cs +++ b/src/Cassette.Aspnet.UnitTests/PlaceholderRewriter.cs @@ -49,6 +49,18 @@ public void GivenCanRewriteOutput_WhenRewriteOutput_ThenPlaceholderReplacingResp response.VerifySet(r => r.Filter = It.IsAny()); } + [Fact] + public void GivenWithCharsetCanRewriteOutput_WhenRewriteOutput_ThenPlaceholderReplacingResponseFilterSetForResponse() + { + settings.IsHtmlRewritingEnabled = true; + ContentType("text/html; charset=utf-8"); + StatusCode(200); + + rewriter.RewriteOutput(); + + response.VerifySet(r => r.Filter = It.IsAny()); + } + [Fact] public void GivenXhtmlContentType_WhenRewriteOutput_ThenPlaceholderReplacingResponseFilterSetForResponse() { @@ -61,6 +73,18 @@ public void GivenXhtmlContentType_WhenRewriteOutput_ThenPlaceholderReplacingResp response.VerifySet(r => r.Filter = It.IsAny()); } + [Fact] + public void GivenXhtmlContentTypeWithCharset_WhenRewriteOutput_ThenPlaceholderReplacingResponseFilterSetForResponse() + { + settings.IsHtmlRewritingEnabled = true; + ContentType("application/xhtml+xml; charset=utf-8"); + StatusCode(200); + + rewriter.RewriteOutput(); + + response.VerifySet(r => r.Filter = It.IsAny()); + } + [Fact] public void GivenStatusCodeIsRedirect_WhenRewriteOutput_ThenFilterNotInstalled() { diff --git a/src/Cassette.Aspnet/PlaceholderRewriter.cs b/src/Cassette.Aspnet/PlaceholderRewriter.cs index ce20cf0a..f640c1b8 100644 --- a/src/Cassette.Aspnet/PlaceholderRewriter.cs +++ b/src/Cassette.Aspnet/PlaceholderRewriter.cs @@ -58,8 +58,8 @@ bool CanRewriteOutput(HttpContextBase httpContext) bool IsHtmlResponse(HttpContextBase httpContext) { - return httpContext.Response.ContentType == "text/html" || - httpContext.Response.ContentType == "application/xhtml+xml"; + return httpContext.Response.ContentType.StartsWith("text/html") || + httpContext.Response.ContentType.StartsWith("application/xhtml+xml"); } } } \ No newline at end of file