Rspec 测试是否在 activeadmin 中删除了新操作

Rspec test if a new action is removed in activeadmin

如何通过 Rspec 测试来测试是否从 ActiveAdmin 中删除了新操作?如果它像 /properties/new 一样在 url 中传递,它将抛出错误。我已经删除了该操作。

describe "GET new" do
    it "should raise an error" do
      get :new
    end
  end

它returns

ActionController::UrlGenerationError:
       No route matches {:action=>"new", :controller=>"admin/properties"}

您可以使用be_routable rspec matcher验证路由

  describe "GET new" do
    it "not to be routable" do
      expect(get: :new).not_to be_routable
    end
  end