2012-07-23 20 views
5

tôi có mã này:rspec - làm thế nào tôi có thể nhận được "pendings" để có văn bản của tôi và không chỉ là "Không có lý do cho"

context "Visiting the users #index page." do 
    before(:each) { visit users_path } 
    subject { page } 
    pending('iii') { should have_no_css('table#users') }  
    pending { should have content('You have reached this page due to a permiss 

ion lỗi ')}

Nó là kết quả trong một vài của mặt dây chuyền, ví dụ

Managing Users Given a practitioner logged in. Visiting the users #index page. 
# No reason given 
# ./spec/requests/role_users_spec.rb:78 
Managing Users Given a practitioner logged in. Visiting the users #index page. 
# No reason given 
# ./spec/requests/role_users_spec.rb:79 

Làm thế nào tôi có thể nhận được những pendings có văn bản thay vì "không có lý do cho"

Tôi đã thử đặt một số văn bản sau chữ chờ và trước khi khối nhưng điều đó không giúp - nó xuất hiện ở cuối dòng - nhưng tôi vẫn có tất cả "Không có lý do nào được đưa ra".

Trả lời

10

pending chính nó là một phương pháp, và các trường hợp sử dụng bình thường là một cái gì đó như thế này:

it "should say yo" do 
    pending "that's right, yo" 
    subject.yo!.should eq("yo!") 
    end 

Đó sẽ ra

Pending: 
    Yo should say yo 
    # that's right, yo 
    # ./yo.rb:8 

Vì vậy, khi bạn muốn sử dụng các hình thức ngắn, giống như

its(:yo!) {should eq("yo!") } 

Sau đó, để đánh dấu là đang chờ xử lý, bạn có một vài tùy chọn:

xits(:you!) {should eq("yo!") } 
pending(:you!) {should eq("yo!")} 

Nhưng để có được những chờ giải quyết với một tin nhắn, bạn nên làm:

its(:yo!) {pending "waiting on client"; should eq("yo!") } 

Điều đó sẽ cung cấp cho bạn sản lượng

Yo yo! 
    # waiting for client 
    # ./yo.rb:16 
Các vấn đề liên quan