草庐IT

hadoop - 我的 MapReduce 工作失败了

全部标签

ruby-on-rails - Rspec 的 instance_double 创建间歇性规范失败

我在使用instance_double时遇到间歇性测试失败。我有一个包含4个规范的文件。这是来源:require'rails_helper'describeSubmitPostdobefore(:each)do@post=instance_double('Post')allow(@post).toreceive(:submitted_at=)endcontext'onsuccess'dobefore(:each)doallow(@post).toreceive(:save).and_return(true)@result=SubmitPost.call(post:@post)endit

ruby - 当 shelled-out 命令返回非零退出代码时,如何让 Ruby 脚本失败?

在Ruby脚本中,有variousways调用系统命令/命令行反引号:`commandarg1arg2`分隔形式,例如%x(commandarg1arg2)(可用其他分隔符)Kernel#system方法:system('commandarg1arg2')Kernel#exec方法:exec('commandarg1arg2')如果我希望Ruby脚本在调用的命令失败时失败(有异常)(具有非零退出代码),我可以检查特殊变量中的退出代码$?对于前两个变体:`commandarg1arg2`failunless$?==0或%x,commandarg1arg2,failunless$?==0如

ruby-on-rails - connect() 到 unix :/var/run/unicorn. 连接到上游时 sock 失败(111:连接被拒绝)

我遵循ruby​​onrails一个应用程序点击部署。数据库做得很好,即使我检查Rails控制台一切正常017/02/2615:34:17[error]18564#0:*31connect()tounix:/var/run/unicorn.sockfailed(111:Connectionrefused)whileconnectingtoupstream,client:121.52.156.57,server:_,request:"GET/HTTP/1.1",upstream:"http://unix:/var/run/unicorn.sock:/",host:"188.166.157

ruby - 使单元测试快速失败以进行突变测试

mutationtesting遇到一个问题是它很慢,因为默认情况下您会为每个生成的突变执行完整的测试运行(测试文件或一组测试文件)。加快突变测试的一种方法是,一旦遇到单一故障(但仅在突变测试期间),就停止对给定突变体的测试运行。更好的做法是让变异测试者记住杀死最后一个变异体的第一个测试是什么,并将其首先交给下一个变异体。ruby中是否有任何东西可以做这些事情,或者我最好的选择是开始猴子修补?(是的,我知道单元测试应该很快。显示所有失败的测试在突变测试之外很有用,因为它不仅可以帮助您识别出问题,还可以查明哪里出了问题)编辑:我目前正在对测试/单元使用heckle。如果测试/单元不可能记住

ruby-on-rails - rails 上的 ruby 。 bundler 。 cucumber 。 rake 中止!命令失败,状态为 (1)

我在Rails3中使用Bundler和Cucumber时遇到问题。当我运行$rakecucumber时,我得到以下输出:bundleexec/usr/local/bin/ruby-I"/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-0.8.5/lib:lib""/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-0.8.5/bin/cucumber"--profiledefault(in/home//practice/rails/blog)Usingthedefaultprofile...UUUU1scen

Ruby 守护进程 - 什么是监视器,它是如何工作的?

因此,Ruby的守护程序gem允许您在启动进程时设置monitor=true。显示器到底是什么,你用它做什么?您所做的就是指定true或false...是否在某处创建日志文件?像god这样的实际上正在监视进程的东西?为什么关于这件事的文档如此可怕?或者这实际上是每个人都应该知道的Unix知识?:) 最佳答案 来自finemanual::monitor:Monitortheprogramsandrestartcrashedinstances.看起来它设置了一个PID文件(即一个包含守护程序进程ID的文件)来跟踪守护程序;如果守护进程由

ruby - 如何获取我的 Sinatra 应用程序的代码覆盖率统计信息?

我编写了一个Sinatra应用程序(网站),我想收集网站代码的代码覆盖率信息。我是Ruby的新手,但Google告诉我rcov是一个很好的代码覆盖工具。不幸的是,我在网上可以找到的所有信息只显示了如何获取有关测试用例的代码覆盖率信息-我想要有关我的站点本身的代码覆盖率信息。我想要分析的特定站点文件位于“sdk”和“sdk/vendor”目录中,因此我通常使用“rubysite.rb”运行我的站点的地方我改为尝试以下操作:rcov-Isdk-Isdk/vendorsite.rb它显示了Sinatra启动文本,但随后立即退出,而不是像我的Sinatra应用程序通常那样等待网络请求。有人能告

ruby - Ruby 中的工作线程

我正在使用ruby​​+qt编写一个简单的内存游戏(试图暂时摆脱c++...)为了允许X秒超时来查看两个打开的部分,我需要计时器或在后台线程中完成工作。在不重新发明轮子的情况下实现这一点的最简单方法是什么?ruby线程?Qt线程?Qt定时器? 最佳答案 我不知道这是否是最好的解决方案,但是:block=Proc.new{Thread.pass}timer=Qt::Timer.new(window)invoke=Qt::BlockInvocation.new(timer,block,"invoke()")Qt::Object.conn

ruby - Ruby 的排序方法如何与组合比较(宇宙飞船)运算符一起工作?

这里是初级程序员,只是想了解Ruby背后的过程sort使用飞船操作符时的方法.希望有人能帮忙。在以下内容中:array=[1,2,3]array.sort{|a,b|ab}...我明白sort一次比较一对数字,然后返回-1如果a属于b之前,0如果它们相等,或者1如果a应该遵循b.但是在降序排序的情况下,像这样:array.sort{|a,b|ba}...到底发生了什么?是否sort还是比较ab然后翻转结果?或者它是在解释return的-1,0和1具有相反的行为?换句话说,为什么要像这样将变量放在block中:array.sort{|b,a|ba}...结果与第一个示例中的排序模式相同?

ruby - 来自 Bundler 的 Fresh Ruby gem - 无法加载我的 version.rb 文件?

我想制作一个全新的Ruby应用程序,所以我决定使用bundlegemfoo来完成它。这给了我全部:lib/foo/version.rbfoo.rbGemfileRakefilefoo.gemspecREADME.md结构。现在,当我运行rubyfoo.rb时,我得到:`require':cannotloadsuchfile--foo/version(LoadError)foo.rb只是默认值:require'foo/version'moduleFooendgems不能自己跑吗?我希望我不必为了测试而将我的gem包含到示例应用程序中吗? 最佳答案