Tôi đang cố viết thông số kỹ thuật cho các chức năng riêng lẻ trong trang trí của mình. Tôi có thông số kỹ thuật cho người giúp đỡ tôi như sau (đây chỉ là một ví dụ):Làm thế nào để spec draper trang trí với rspec.
book_helper.rb
module BookHelper
def heading_title
@book.name[0..200]
end
end
book_helper_spec.rb
require 'spec_helper'
describe BookHelper do
subject { FactoryGirl.build(:book) }
it 'limits title to 200 characters' do
title = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium.'
subject.name = title
subject.save
@book = subject
expect(heading_title).to eq(title[0..200])
end
end
Với trang trí sau, làm thế nào tôi có thể viết một spec cho chức năng?
book_decorator.rb
class BookDecorator < Draper::Decorator
delegate_all
def display_days
model.months_to_display * 30
end
end
Điều này sẽ không hoạt động nếu mã được thử nghiệm dự kiến @book không được trang trí, đây là cách được khuyến nghị để thực hiện: https://github.com/drapergem/draper#when-to-decorate-o bjects – jelder