Cod*_*nis 0 vb.net asp.net-mvc nunit rhino-mocks
我正在尝试使用Rhino Mocks在VB.NET中实现HtmlHelperTest.cs中的GetHttpContext函数,但是我没有定义"Type'HttpContextBase'." 编译器建议将其更改为,但是当我这样做时,我得到一个运行时错误,密封的类不能被模拟.HttpContext
我的测试项目引用了System.Web并且还导入了该命名空间.还有什么我需要做的才能让HttpContextBase类型对我想要的代码可见吗?
这是代码,但我不知道它与问题有多相关.
Imports NUnit.Framework
Imports Rhino.Mocks
Imports System.Web.Routing
<TestFixture()> _
Public Class XhtmlHelperTest
Public Const AppPathModifier = "/$(SESSION)"
'Various test methods here...'
Private Shared Function GetHttpContext(ByVal appPath As String, _
ByVal requestPath As String, _
ByVal httpMethod As String, _
Optional ByVal protocol As String = "http", _
Optional ByVal port As Integer = -1 _
) As HttpContextBase
Dim mockHttpContext = MockRepository.GenerateMock(Of HttpContextBase)()
If Not String.IsNullOrEmpty(appPath) Then
mockHttpContext.Expect(Function(hc) hc.Request.ApplicationPath).Return(appPath)
End If
If Not String.IsNullOrEmpty(requestPath) Then
mockHttpContext.Expect(Function(hc) hc.Request.AppRelativeCurrentExecutionFilePath).Return(requestPath)
End If
Dim uri As Uri
If port >= 0 Then
uri = New Uri(protocol + "://localhost" + ":" + port)
Else
uri = New Uri(protocol + "://localhost")
End If
mockHttpContext.Expect(Function(hc) hc.Request.Url).Return(uri)
mockHttpContext.Expect(Function(hc) hc.Request.PathInfo).Return("")
If Not String.IsNullOrEmpty(httpMethod) Then
mockHttpContext.Expect(Function(hc) hc.Request.HttpMethod).Return(httpMethod)
End If
mockHttpContext.Expect(Function(hc) hc.Response.ApplyAppPathModifier(Arg(Of String).Is.Anything)).WhenCalled(Function(invocation) AppPathModifier + invocation.Arguments(0))
Return mockHttpContext
End Function
End Class
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
923 次 |
| 最近记录: |