선언적 승인 권한을 존중하여 테스트 할 수있는 방법이 있습니까?rspec을 사용하여 declarative_authorization을 테스트하는 방법
설명서에는 테스트 단위를 사용하는 데 필요한 몇 가지 지침이 있지만 rspec을 사용하는 방법을 찾지 못하는 것 같습니다.
선언적 승인 권한을 존중하여 테스트 할 수있는 방법이 있습니까?rspec을 사용하여 declarative_authorization을 테스트하는 방법
설명서에는 테스트 단위를 사용하는 데 필요한 몇 가지 지침이 있지만 rspec을 사용하는 방법을 찾지 못하는 것 같습니다.
rspec에서 모든 어설 션을 사용할 수 있으므로 사용하거나 rpsec 스타일로 변환 할 수 있습니다.
오이를 사용하여 역할을 테스트했습니다. 이처럼
:
require 'machinist/active_record'
require 'spec/blueprints.rb'
def user
@user ||= User.make
end
Given /^I am an Administrator$/ do
user
@user.assignments.delete_all
@user.roles.delete_all
@user.assignments << Assignment.create(:user_id => @user.id,
:role_id => Role.find_by_name("admin").id)
@user.roles.count.should == 1
@user.roles << Role.find_by_name("admin")
Authorization.current_user = @user
end
예, 테스트 할 수 있습니다 권한. Authorization :: TestHelper 아래의 here을 참조하십시오. spec_helper 파일에서 도우미가 필요하며 Authorization :: TestHelper가 포함되어야합니다. 이렇게하면 rspec의 before
메소드에서 현재 사용자와 권한을 지정할 수있는 메소드가 생깁니다.
또 다른 팁 : 팩토리 객체를보다 쉽게 만들 수 있도록 declarative_authorization에는 섹션에서 인증을 무시할 수있는 without_access_control
메소드가 있습니다.
죄송합니다. 나는 그것을 얻지 못했다. 좀 더 구체적 일 수 있습니까? –