gpt4 book ai didi

ruby-on-rails - 如何在 shoulda 宏中创建上下文

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

用较小的代码示例再次问这个问题:

  # this is a dummy shoulda macro that creates a context
def self.macro_context
context "macro" do
yield
end
end

# i am expecting this test to fail within the macro context
context "some context" do
macro_context do
should "test" do
fail
end
end
end

所以我希望看到的是:

  1) Error:
test: some context macro context should test. (TestClassName)

但我只得到这个:

所以我希望看到的是:

  1) Error:
test: some context should test. (TestClassName)

知道我做错了什么吗?

最佳答案

我的代码中有类似的东西。我在 test/shoulda_macros/whatever_file.rb

中这样做
def self.should_require_login(actions = [:index], &block)
if (actions.is_a? Symbol)
actions = [actions]
end
context "without user" do
actions.each do |action|
should "redirect #{action.to_s} away" do
get action
assert_redirected_to login_path
end
end
end
if block_given?
context "active user logged in" do
setup do
@user = Factory.create(:user)
@user.register!
@user.activate!
login_as(@user)
end

merge_block(&block)
end
end
end

关于ruby-on-rails - 如何在 shoulda 宏中创建上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2708632/

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