我将自定义操作定义为ailsAdmin :: Config :: Actions :: Base的子类.在我定义的自定义控制器 – register_instance_option:controller的操作下
控制器通过并删除某些损坏的记录,似乎从我的测试中工作正常.如果这是一个普通的控制器,我会为这个控制器编写一个控制器规范,但我不知道如何为这样的自定义rails_admin动作编写规范.
我看了一下rails_admin存储库中的规范,但它似乎对我帮助不大:https://github.com/sferik/rails_admin/blob/master/spec/rails_admin/config/actions/base_spec.rb
我想做一个正常的控制器规范,我测试发布到端点,然后看看是否在对象上调用了一个方法,链接似乎没有.我似乎无法在网上找到任何有关使用Rspec和自定义rails_admin操作的有用帖子.
解决方法
这是我的设置:
RSpec.describe RailsAdmin::MainController,type: :controller do routes { RailsAdmin::Engine.routes } describe '#my_custom' do subject { get :my_custom,{ model_name: 'my_model',id: my_model.id } } it "should respond with 302" do expect(response.code).to eq("302") end end end