是否有类似于autotest的ctrl + c强制运行所有规格?我还在努力调整我的.Guard文件,但暂时可以强行运行所有规格而不重新启动后卫吗?ctrl + c退出警卫.
我已经找到了答案,但我发现的似乎不起作用。如果我运行weather "NYC",echo'd 行是“weather = NYC”,但是如果我运行weather,echo'd 行是“weather =”。如何设置默认值$location?
function weather --argument location --description "Display weather information for a given location"
set -q location; or set location "San Francisco, CA"
echo "weather = $location"
curl -H "Accept-Language: en" "wttr.in/$location?u"
end
Run Code Online (Sandbox Code Playgroud)
更新:
我已经能够通过以下更改获得所需的行为,但仍然很好奇是否set -q location; or set location "San Francisco, CA"应该工作。它似乎在命令行上,但不在函数中。
if not test -n "$location"
set location "Washington, DC"
end
Run Code Online (Sandbox Code Playgroud) 我想验证页面上是否存在具有特定href的链接.我目前正在做我应该看到"/ some-link-here"但似乎失败了.如何确保链接存在而无需点击+我应该在"/ some-link-here"页面上?
我有一个sunspot/solr设置全文搜索模型属性.我的QA刚搜索了"和+,两者都导致了500错误:
Solr响应: orgapachelucenequeryParserParseException_Cannot_parse__Encountered_EOF_at_line_1_column_0_Was_expecting_one_of_____NOT______________________________QUOTED______TERM______PREFIXTERM______WILDTERM__________________NUMBER______TERM____________
如何使这些查询字符串安全?太阳黑子有办法解决这个问题吗?
我是第一次测试CanCan功能,但感到很沮丧。我丢失了一些东西...即使我在can:invite_to块内返回false / true,我仍然没有通过规格。我是否缺少使用CanCan匹配器?还是存根?或在CanCan中定义功能?
我有什么想念的吗?
能力
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new
can :invite_to, Network do |network|
network.allows_invitations? && (user.admin? || user.can_send_invitations_for?(network))
end
end
end
Run Code Online (Sandbox Code Playgroud)
Capacity_spec.rb
require 'cancan'
require 'cancan/matchers'
require_relative '../../app/models/ability.rb'
class Network; end;
describe Ability do
let(:ability) { Ability.new(@user) }
describe "#invite_to, Network" do
context "when network level invitations are enabled" do
let(:network) { stub(allows_invitations?: true) }
it "allows an admin" do
@user = stub(admin?: true)
ability.should be_able_to(:invite_to, network)
end
it "allows a member if the …Run Code Online (Sandbox Code Playgroud) 我需要在Rails 3应用程序,它允许在许多模型(文章,帖子等)和我辩论轧制线沿线的我自己的解决方案的意见建立一个嵌套评论系统这篇文章.有一些宝石可供使用,例如使用awesome_nested_set的acts_as_commentable_with_threading,但是他们对我的需求感到臃肿.
我的问题是,如果我能够解决我可能遇到的潜在问题.我想避免走一条路只是为了走向死胡同.我最初的担忧涉及有效地查询儿童.比如说,获取一篇文章后代评论列表(孩子和孩子的孩子).
有人对此有意见吗?谢谢.
我有一个调用current_user.eligible_for_reward的辅助方法?我希望在Capybara验收规范中存根.在我的模型中,我有一个占位符虚拟方法:
User.rb
def eligible_for_reward?
"blah"
end
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止所尝试的:
我试过stubing current_user,但这会导致"修改冻结对象"错误,因为控制器是零.我相信只有在我使用RSpec的get而不是访问some_path时才会设置控制器.我需要坚持访问some_path,我相信,否则我的page.should ...都会失败,因为页面没有设置.
我尝试以用户身份登录(login_as(用户)成功运行注册/登录)然后将user.eligible_for_reward?存根,但这似乎不起作用,因为我仍然回到测试"blah"
是否有一种很好的方法来隐藏这种方法?
我应该如何使用RSpec测试这个助手?
module ApplicationHelper
def build_rpx_url(provider)
signin_url(provider) << "?token_url=" << token_url << provider_params(provider)
end
private
def signin_url(provider)
case provider.downcase
when 'facebook'; 'https://login.xyz.net/facebook/connect_start'
when 'google'; 'https://login.xyz.net/openid/start'
when 'twitter'; 'https://login.xyz.net/twitter/start'
when 'linkedin'; 'https://login.xyz.net/linkedin/start'
when 'yahoo'; 'https://login.xyz.net/openid/start'
end
end
def provider_params(provider)
params = case provider.downcase
when 'facebook'; ["ext_perm=publish_stream,email,offline_access"]
when 'google'; ["openid_identifier=https://www.google.com/accounts/o8/id"]
when 'twitter'; []
when 'linkedin'; []
when 'yahoo'; ["openid_identifier=http://me.yahoo.com/"]
end
params.empty? ? '' : "&" << params.join('&')
end
def token_url
"#{new_user_session_url}?authenticity_token=#{Rack::Utils.escape(form_authenticity_token)}"
end
end
Run Code Online (Sandbox Code Playgroud) 我正在使用演示者模式,并且似乎遇到了不一致的类命名冲突。我有一个带有主页方法的页面控制器,我想让该方法使用Pages :: HomepagePresenter类,但最终出现错误:
uninitialized constant ActionController::Caching::Pages::HomepagePresenter
# ./app/controllers/pages_controller.rb:3:in `homepage'
# ./spec/requests/pages_spec.rb:14:in `block (5 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)
假设问题出在演示者的Pages控制器和Pages命名空间上,但是当为演示者使用Homepage控制器和Homepage命名空间时似乎没有问题。
我想念什么吗?以下是我尝试过的应用程序行为组合:
# Ideal, but this breaks with the aforementioned error
presenters/pages/homepage_presenter.rb (class Pages::HomepagePresenter)
controllers/pages_controller.rb (class PagesController)
# Works
presenters/page/homepage_presenter.rb (class Page::HomepagePresenter)
controllers/pages_controller.rb (class PagesController)
# Workes; I would expect this to break
presenters/homepage/index_presenter.rb (class Homepage::IndexPresenter)
controllers/homepage_controller.rb (class HomepageController)
Run Code Online (Sandbox Code Playgroud)