2013-08-14 3 views
7

एक निम्नलिखित ActiveAdmin कोड के लिए एक नियंत्रक और सुविधा कल्पना कैसे लिख सकता हूँ करता है:RSpec का उपयोग कर ActiveAdmin के लिए नियंत्रक और फीचर चश्मा लिखें?

# app/admin/organization.rb 
ActiveAdmin.register Organization do 
    batch_action :approve do |selection| 
    Organization.find(selection).each {|organization| organization.approve } 
    redirect_to collection_path, notice: 'Organizations approved.' 
    end 
end 

यहाँ मेरी सुविधा कल्पना है। यह 'बैच क्रियाएं' नहीं ढूंढ सकता है जो पॉप-अप मेनू में ActiveAdmin लोड करता है।

# spec/features/admin/organization_feature_spec.rb 
require 'spec_helper' 
include Devise::TestHelpers 

describe 'Admin Organization' do 
    before(:each) do 
    @user = FactoryGirl.create(:admin_user) 
    login('[email protected]any.com', 'password1') 
    end 

    it 'approves in batch' do 
    organization = FactoryGirl.create(:organization) 
    visit admin_organizations_path 
    check 'collection_selection_toggle_all' 
    click_link 'Batch Actions' 
    click_link 'Approve Selected' 
    organization.reload 
    organization.state.should eq 'approved' 
    end 
end 

संस्करण

  • रेल 3.2.14
  • ActiveAdmin 0.6.0

उत्तर

9

मैं पता लगा कि कैसे एक नियंत्रक कल्पना के निर्माण के लिए।

# spec/controllers/admin/organizations_controller_spec.rb 
require 'spec_helper' 
include Devise::TestHelpers 

describe Admin::OrganizationsController do 
    render_views 

    before(:each) do 
    @user = FactoryGirl.create(:admin_user) 
    sign_in @user 
    end 

    it 'approve organization' do 
    @organization = FactoryGirl.create(:organization, state: 'pending') 
    post :batch_action, batch_action: 'approve', collection_selection_toggle_all: 'on', collection_selection: [@organization.id] 
    @organization.reload 
    @organization.pending?.should be_false 
    end 
end 

यदि कोई जानता है कि फीचर स्पेक कैसे लिखना है, तो कृपया उस जानकारी को साझा करें।

संबंधित मुद्दे