rspec views
2999 단어 rspec
#coding:utf-8
require 'spec_helper'
require 'will_paginate/array'
describe "admin/roles/index" do
before(:each) do
@ability = Object.new
@ability.extend(CanCan::Ability)
controller.stub(:current_ability) { @ability }
view.stub(:current_ability) { @ability }
assign(:roles, Role.paginate(:page => params[:page],:per_page => 10).order("updated_at DESC"))
end
it "has a create link for that role inside admin" do
@ability.can :create, Role
render
if Role.count > 0
rendered.should have_selector("div") do |new_a|
new_a.should have_selector "a",
:href => new_admin_role_path,
:content => " "
end
end
end
it "has a destroy link for that role inside admin" do
@ability.can :destroy, Role
render
if Role.count > 0
rendered.should have_selector("tr td") do |destroy_a|
destroy_a.should have_selector "a",
:href => admin_role_path(Role.first),
:"data-method" => "delete",
:"data-confirm" => " , 。 ?",
:rel => "nofollow",
:content => " "
end
end
end
it "has a update link for that role inside admin" do
@ability.can :update, Role
render
if Role.count > 0
rendered.should have_selector("tr td") do |update_a|
update_a.should have_selector "a",
:href => "/admin/roles/"+Role.first.id+"/edit",
:content => " "
end
end
end
it "renders a list of admin/roles" do
role = Role.first
@ability.can :destroy, Role
@ability.can :update, Role
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
allow_message_expectations_on_nil
assigns[:roles].stub!(:total_pages).and_return(1)
assert_select "tr>td", :text => role.name.to_s, :count => 1
assert_select "tr td", :text => role.description.to_s, :count => 1
mycount = Role.count
assert_select "a", :html => " ",:count => mycount < 10?mycount:10
assert_select "a", :html => " ", :count => mycount < 10?mycount:10
end
end
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker에서 Rspec 및 Simplecov for Rails 프로젝트 설정Rspec은 Minitest 의 대안으로 Ruby on Rails용 테스트 소프트웨어입니다. Simplecov는 Ruby용 코드 적용 범위 분석 도구입니다 이 예제Jiffy는 우리 프로젝트의 이름입니다. 힘내 ( )...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.