-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathShouldRenderView.cs
More file actions
41 lines (33 loc) · 1.33 KB
/
ShouldRenderView.cs
File metadata and controls
41 lines (33 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using System.Web.Mvc;
namespace TestStack.FluentMVCTesting
{
public partial class ControllerResultTest<T>
{
private ViewResultTest ShouldRenderViewResult<TViewResult>(string viewName) where TViewResult : ViewResultBase
{
ValidateActionReturnType<TViewResult>();
var viewResult = (TViewResult)ActionResult;
if (viewResult.ViewName != viewName && (viewName != ActionName || viewResult.ViewName != ""))
{
throw new ActionResultAssertionException(string.Format("Expected result view to be '{0}', but instead was given '{1}'.", viewName, viewResult.ViewName == "" ? ActionName : viewResult.ViewName));
}
return new ViewResultTest(viewResult, Controller);
}
public ViewResultTest ShouldRenderView(string viewName)
{
return ShouldRenderViewResult<ViewResult>(viewName);
}
public ViewResultTest ShouldRenderPartialView(string viewName)
{
return ShouldRenderViewResult<PartialViewResult>(viewName);
}
public ViewResultTest ShouldRenderDefaultView()
{
return ShouldRenderView(ActionName);
}
public ViewResultTest ShouldRenderDefaultPartialView()
{
return ShouldRenderPartialView(ActionName);
}
}
}