Sto cercando di iniziare a testare ActiveAdmin, in particolare ho bisogno di testare un membro_azione da uno dei controller ActiveAdmin.Test ActiveAdmin con rspec
Ragazzi, conoscete qualche buon tutorial su questo argomento?
Grazie,
Sto cercando di iniziare a testare ActiveAdmin, in particolare ho bisogno di testare un membro_azione da uno dei controller ActiveAdmin.Test ActiveAdmin con rspec
Ragazzi, conoscete qualche buon tutorial su questo argomento?
Grazie,
Questo è il modo in cui ho fatto che ha funzionato per me: -
ActiveAdmin.register Post do
menu :parent => "Admin"
#path = /admin/posts/:id/comments
member_action :comments do
@post = Post.find(params[:id])
end
end
require 'spec_helper'
include Devise::TestHelpers
describe Admin::PostsController do
render_views
before(:each) do
@user = mock_model(User, :email => "[email protected]")
request.env['tester'] = mock(Tester, :authenticate => @user, :authenticate! => @user)
end
describe "Get comments" do
before(:each) do
@post = Post.create! valid_attributes
Post.should_receive(:find).at_least(:once).and_return(@post)
get :comments, :id => @post.id
end
after(:each) do
@post.destroy
end
it "gets the proper record to update" do
assigns(:post).should eq(@post)
end
it "should render the actual template" do
response.should contain("Comments")
response.body.should =~ /Comments/m
end
end
end
# app/admin/post.rb
ActiveAdmin.register Post do
end
# spec/controller/admin/posts_controller_spec.rb
describe Admin::PostsController do
subject { get :index }
its(:status) { should eq 200 }
end
Ho riscontrato questo errore: 'costante non inizializzata Admin (NameError)' Per favore, aiuto. :) – across
@across Questo perché il tuo spazio dei nomi potrebbe essere diverso o non caricato. Forse stai usando 'spec/spec_helper.rb' invece di' spec/rails_helper.rb' (una nuova domanda di overflow dello stack sarebbe la strada da percorrere per risolverlo). – Dorian
ottengo un errore "variab locale non definita le o metodo 'request 'per #" –
Calin
Ho capito, devo memorizzare le mie specifiche in spec/controller in modo che Rspec aggiunga automaticamente i metodi di richiesta alle mie specifiche – Calin
Che cos'è Tester in questo esempio? –