im in ur test stubbin ur mailers

This commit is contained in:
Sarah Mei 2010-10-22 06:22:47 -07:00
parent 6620f33ae2
commit 7e4529f2bd
2 changed files with 56 additions and 45 deletions

View file

@ -6,10 +6,10 @@ require 'spec_helper'
describe PublicsController do
render_views
let(:user) {Factory.create :user}
let(:user2){Factory.create :user}
let(:aspect1){user.aspect(:name => "foo")}
let(:aspect2){user2.aspect(:name => "far")}
let(:user) { Factory.create :user }
let(:user2) { Factory.create :user }
let(:aspect1) { user.aspect(:name => "foo") }
let(:aspect2) { user2.aspect(:name => "far") }
before do
sign_in :user, user
end
@ -77,10 +77,13 @@ describe PublicsController do
end
describe 'friend requests' do
let(:aspect2) {user2.aspect(:name => 'disciples')}
let!(:req) {user2.send_friend_request_to(user.person, aspect2)}
let!(:xml) {user2.salmon(req).xml_for(user.person)}
let(:aspect2) { user2.aspect(:name => 'disciples') }
let!(:req) { user2.send_friend_request_to(user.person, aspect2) }
let!(:xml) { user2.salmon(req).xml_for(user.person) }
before do
deliverable = Object.new
deliverable.stub!(:deliver)
Notifier.stub!(:new_request).and_return(deliverable)
req.delete
user2.reload
user2.pending_requests.count.should be 1

View file

@ -5,12 +5,12 @@
require 'spec_helper'
describe Diaspora::Parser do
let(:user) {Factory.create(:user)}
let(:aspect) {user.aspect(:name => 'spies')}
let(:user2) {Factory.create(:user)}
let(:aspect2){user2.aspect(:name => "pandas")}
let(:user3) {Factory.create :user}
let(:person) {user3.person}
let(:user) { Factory.create(:user) }
let(:aspect) { user.aspect(:name => 'spies') }
let(:user2) { Factory.create(:user) }
let(:aspect2) { user2.aspect(:name => "pandas") }
let(:user3) { Factory.create :user }
let(:person) { user3.person }
describe "parsing compliant XML object" do
it 'should be able to correctly handle comments with person in db' do
@ -45,7 +45,14 @@ describe Diaspora::Parser do
retraction = Retraction.for(message)
xml = retraction.to_diaspora_xml
proc {user.receive xml, user2.person}.should change(StatusMessage, :count).by(-1)
proc { user.receive xml, user2.person }.should change(StatusMessage, :count).by(-1)
end
context "friending" do
before do
deliverable = Object.new
deliverable.stub!(:deliver)
Notifier.stub!(:new_request).and_return(deliverable)
end
it "should create a new person upon getting a person request" do
@ -56,7 +63,7 @@ describe Diaspora::Parser do
user3.destroy
person.destroy
user
lambda {user.receive xml, person}.should change(Person, :count).by(1)
lambda { user.receive xml, person }.should change(Person, :count).by(1)
end
it "should not create a new person if the person is already here" do
@ -64,7 +71,7 @@ describe Diaspora::Parser do
original_person_id = user2.person.id
xml = request.to_diaspora_xml
user
lambda {user.receive xml, user2.person}.should_not change(Person, :count)
lambda { user.receive xml, user2.person }.should_not change(Person, :count)
user2.reload
user2.person.reload
@ -73,9 +80,10 @@ describe Diaspora::Parser do
url = "http://" + request.callback_url.split("/")[2] + "/"
Person.where(:url => url).first.id.should == original_person_id
end
end
it "should activate the Person if I initiated a request to that url" do
request = user.send_friend_request_to( user3.person, aspect)
request = user.send_friend_request_to(user3.person, aspect)
user.reload
request.reverse_for user3
@ -99,8 +107,8 @@ describe Diaspora::Parser do
retraction = Retraction.for(user2)
retraction_xml = retraction.to_diaspora_xml
lambda {user.receive retraction_xml, user2.person}.should change{
aspect.reload.people.size}.by(-1)
lambda { user.receive retraction_xml, user2.person }.should change {
aspect.reload.people.size }.by(-1)
end
it 'should marshal a profile for a person' do