我正在尝试为 Nancy 项目编写测试。我已经将我的测试剥离到最基本的东西,但仍然得到一个看似奇怪的结果。
模块:
public class HomeModule : BaseModule
{
public HomeModule(IUserMapper mapper)
{
Get["/"] = "Hello, world!";
}
}
考试:
[Test]
public void Home_Index_should_return_response_OK()
{
var result = GetBrowser().Get("/", with => with.HttpRequest());
Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
}
断言失败并显示以下消息:
预期:好的
但是是:好的
怎么回事?两个结果的类型HttpStatusCode
和值都是“OK”。如果我同时添加.GetValue()
或添加.ToString()
它们,则断言通过,但感觉会有所不同,并且有些“代码气味”。
起初我认为这可能是 nUnit 和测试枚举的一个怪癖,但是当我尝试这样的事情时:
var value = ActionTargets.Suite;
Assert.AreEqual(ActionTargets.Suite,value);
它通过了。