gpt4 book ai didi

ruby-on-rails - 如何测试作为 helper_method 公开的 Rails Controller 方法?

转载 作者:行者123 更新时间:2023-11-28 19:39:47 27 4
gpt4 key购买 nike

它们似乎无法从 ActionView::TestCase 访问

最佳答案

没错,辅助方法不会在 View 测试中公开 - 但它们可以在您的功能测试中进行测试。由于它们是在 Controller 中定义的,因此这是测试它们的正确位置。您的辅助方法可能定义为 private,因此您必须使用 Ruby 元编程来调用该方法。

app/controllers/posts_controller.rb:

class PostsController < ApplicationController

private

def format_something
"abc"
end
helper_method :format_something
end

测试/功能/posts_controller_test.rb:

require 'test_helper'

class PostsControllerTest < ActionController::TestCase
test "the format_something helper returns 'abc'" do
assert_equal 'abc', @controller.send(:format_something)
end
end

关于ruby-on-rails - 如何测试作为 helper_method 公开的 Rails Controller 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2448063/

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