Refactor ostatus builder spec

This commit is contained in:
Raphael 2010-11-03 11:07:49 -07:00
parent 7771219a0a
commit 2eef9f7ad1

View file

@ -10,16 +10,23 @@ describe Diaspora::OstatusBuilder do
let!(:user) { make_user }
let(:aspect) { user.aspects.create(:name => "Public People") }
let!(:status_message1) { user.post(:status_message, :message => "One", :public => true, :to => aspect.id) }
let!(:status_message2) { user.post(:status_message, :message => "Two", :public => true, :to => aspect.id) }
let!(:status_message3) { user.post(:status_message, :message => "Three", :public => false, :to => aspect.id) }
let!(:public_status_messages) {
3.times.inject([]) do |arr,n|
s = user.post(:status_message, :message => "hey#{n}", :public => true, :to => aspect.id)
arr << s
end
}
let!(:private_status_messages) {
3.times.inject([]) do |arr,n|
s = user.post(:status_message, :message => "secret_ney#{n}", :public => false, :to => aspect.id)
arr << s
end
}
let!(:atom) { director = Diaspora::Director.new; director.build(Diaspora::OstatusBuilder.new(user)) }
it 'should include a users posts' do
atom.should include status_message1.message
atom.should include status_message2.message
atom.should_not include status_message3.message
public_status_messages.each{ |status| atom.should include status.message }
private_status_messages.each{ |status| atom.should_not include status.message }
end
end