我有一个控制器UserController
有这个动作
// GET /blah
public Task<User> Get(string domainUserName)
{
if (string.IsNullOrEmpty(domainUserName))
{
throw new ArgumentException("No username specified.");
}
return Task.Factory.StartNew(
() =>
{
var user = userRepository.GetByUserName(domainUserName);
if (user != null)
{
return user;
}
throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, string.Format("{0} - username does not exist", domainUserName)));
});
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试为我抛出404异常的情况编写一个测试.
这是我尝试过的输出 -
1)
[Test]
public void someTest()
{
var mockUserRepository = new Mock<IUserRepository>();
mockUserRepository.Setup(x => x.GetByUserName(It.IsAny<string>())).Returns(default(User));
var userController = new UserController(mockUserRepository.Object) { Request = new HttpRequestMessage() };
Assert.That(async () => …
Run Code Online (Sandbox Code Playgroud) 我看到开发人员在完成会话对象时会使用两种方法.
1)Session.Remove(key)
2)会话(关键)=没有
上面两个更好的方法是什么?Session.Remove会自动处理存储的对象吗?
第二种方法是否依赖于垃圾收集器来实际释放内存?
编辑:谢谢你的回复,伙计们.看起来像Session.Remove是正确的方法.但是,如果Session.Remove不保证对象的处理,那么当我们不需要它时,处理会话中存储的对象的最佳方法是什么?
谢谢.
在我正在进行的项目中,我们通过Selenium编写了功能测试.每个功能发布都会对应用程序进行功能更改.
是否有工具/机制可以跟踪自动功能测试中的差距,以便至少手动测试人员能够密切关注这些区域?
注意:我们没有进行FTDD,因此即使我们确保高单元测试覆盖率,功能测试覆盖率也可能很差.我们使用NCover来检查单元测试覆盖率.
我可以互换使用Bash和PowerShell,当我无法在PowerShell控制台上执行Ctrl+ 时,发现它非常烦人R.
是否有插件/备用命令可以帮助我无缝切换Bash和PowerShell?
PowerShell现在支持Ctrl+ R.请看这个答案.
我有一个应该调用ruby脚本的go程序.
我有一个runCommand
功能:
func runCommand(cmdName string, arg ...string) {
cmd := exec.Command(cmdName, arg...)
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
cmd.Stdin = os.Stdin
err = cmd.Run()
if err != nil {
fmt.Printf("Failed to start Ruby. %s\n", err.Error())
os.Exit(1)
}
}
Run Code Online (Sandbox Code Playgroud)
我像这样调用它:
runCommand("ruby", "-e", "require 'foo'")
Run Code Online (Sandbox Code Playgroud)
它适用于大多数情况,除非gets
子进程中有一个或任何类似的操作需要暂停输入.
我试过设置cmd.Stdin = os.Stdin
,但它不等待输入.
我究竟做错了什么?
我正在研究一个rails引擎,我正在尝试编写一个可以放置这一行的生成器
do_stuff (foo)
Run Code Online (Sandbox Code Playgroud)
作为最后一个语句config/routes.rb
,不破坏文件语法.
具体来说,如果我现在config/routes.rb
看起来像这样
Rails.application.routes.draw do
blah
more blah
end
Run Code Online (Sandbox Code Playgroud)
运行发电机后,我希望config/routes.rb
看起来像这样
Rails.application.routes.draw do
blah
more blah
do_stuff (foo) # injected line
end
Run Code Online (Sandbox Code Playgroud)
我查看了ActiveAdmin的功能,但无法创建一条毯子最后一行规则.任何帮助是极大的赞赏.
如果我们在应用程序中有定义的层次结构.对于前三层架构,我们如何限制后续开发人员违反规范?
例如,对于MVP(不是asp.net MVC)架构,演示者应始终绑定模型和视图.这有助于编写适当的单元测试程序.但是,我们遇到的情况是人们直接在视图中导入模型并调用违反规范的函数,因此无法正确编写测试用例.
有没有办法可以限制哪些类可以从一组类继承?我正在研究各种可能性,包括采用不同的设计模式,但是新方法应该值得所涉及的代码更改.
有没有办法可以按降序获得范围?
防爆
[1..4]
Run Code Online (Sandbox Code Playgroud)
评估为
> val it : int list = [1; 2; 3; 4]
Run Code Online (Sandbox Code Playgroud)
但
[4..1]
Run Code Online (Sandbox Code Playgroud)
评估为
> val it : int list = []
Run Code Online (Sandbox Code Playgroud)
是否有不同的语法来实现这一点而不必做List.Reverse
?
假设我们有一个Class1的通用列表,通常有给定会话的约100个对象.我想看看列表是否有特定的对象.ASP.NET 2.0允许我这样做:
Dim objResult as Class1 = objList.Find(objSearch)
Run Code Online (Sandbox Code Playgroud)
与传统的For循环相比,从性能角度来看,这种方法的速度如何?
如何随着列表长度的增加或减少而变化?
假设我们有两条路径:
c:\foo\bar\baz
和 c:\foo\bar
是否有任何包/方法可以帮助我确定一个是否是另一个的子目录?我正在寻找一个跨平台的选择.
我试图为列表的每个成员调用一个函数,但将其他参数传递给委托.
如果我有一个名单 documents
List<string> documents = GetAllDocuments();
Run Code Online (Sandbox Code Playgroud)
现在我需要迭代文档并为每个条目调用一个方法.我可以用类似的东西来做
documents.ForEach(CallAnotherFunction);
Run Code Online (Sandbox Code Playgroud)
这需要CallAnotherFunction
有一个像这样的定义
public void CallAnotherFunction(string value)
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
但是,我需要CallAnotherFunction
调用另一个参数,比如content
依赖于调用列表.
所以,我的理想定义是
public void CallAnotherFunction(string value, string content)
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
我想将内容作为ForEach调用的一部分传递
List<string> documents = GetAllDocuments();
documents.ForEach(CallAnotherFunction <<pass content>>);
List<string> templates = GetAllTemplates();
templates.ForEach(CallAnotherFunction <<pass another content>>);
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以实现这一点,而无需定义不同的函数,或使用迭代器?
我指的是 monaco的完成提供程序示例。
我注意到完成是按以下顺序定义的:lodash, express, mkdirp
但编辑器中的建议是按字母顺序列出的。
我想自定义这种行为。这可能吗?我看过这个pull request,但无法将其连接起来。
任何帮助表示赞赏!
我想知道登录到我的ASP.NET 2.0应用程序的用户数.
要考虑的要点:1)最简单的方法是使用Application或Cache对象来计算Session开始或结束的计数.但是,如果有工作进程回收,则会失败.不是吗?
2)无论会话是由进程/状态服务器托管/还是SQL服务器管理,都不应该有所区别.
3)最好应与web-farm架构无缝连接.