gpt4 book ai didi

testing - 从测试中向 Nancy 模块发送参数

转载 作者:行者123 更新时间:2023-11-28 20:15:58 25 4
gpt4 key购买 nike

我正在尝试使用参数测试一个模块(下面只是我试图找出问题所在的代码)

public class StuffModule : NancyModule
{
public StuffModule() : base("/Stuff")
{
Get["/All/"] = parameters =>
{
string str = parameters.one;
return Response.AsJson(str);
};
}
}

private Browser _browser;

[SetUp]
public void SetUp()
{
var module = new StuffModule(null);

var mock = new Mock<IRecipeExtractor>();
var bootstrapper = new ConfigurableBootstrapper(
with => with.Dependency(mock.Object)
);

_browser = new Browser(bootstrapper);
}

[Test]
public void Can_extract_recipe_as_json()
{
var result = _browser.Get("/Stuff/All/", with =>
{
with.HttpRequest();
with.Query("one", "yes_one");
});

Assert.That(result.StatusCode, Is.EqualTo(HttpStatusCode.OK));
}

当运行上面的代码时,我的参数变量中什么也没有。一些提示?

最佳答案

为了捕获参数,您需要将它们声明为您的部分的一部分,例如 /profile/{username} 这将导致 parameters.username 可访问.

您正在将查询字符串值传递到您的测试中,该值可在 Request.Query.one 上访问,您可以确保它具有 Request.Query.one.HasValue< 的值

您可以在这里阅读更多相关信息 https://github.com/NancyFx/Nancy/wiki/Defining-routes在这里 https://github.com/NancyFx/Nancy/wiki/Testing-your-application

关于testing - 从测试中向 Nancy 模块发送参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12996422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com