Skip to content
Extraits de code Groupes Projets
status_message_controller_spec.rb 1,62 ko
Newer Older
  • Learn to ignore specific revisions
  • #   Copyright (c) 2010, Diaspora Inc.  This file is
    #   licensed under the Affero General Public License version 3 or later.  See
    #   the COPYRIGHT file.
    
    require 'spec_helper'
    
    describe StatusMessagesController do
    
      render_views
    
      let!(:user) { Factory(:user) }
      let!(:aspect) { user.aspect(:name => "lame-os") }
    
    
        @controller.stub!(:current_user).and_return(user)
    
        let(:status_message_hash) {{"status_message"=>{"public"=>"true", "message"=>"facebook, is that you?", "to" =>"#{aspect.id}"}}}
    
          let!(:service2) { s = Factory(:service, :provider => 'facebook'); user.services << s; s }
    
    
          it 'should post to facebook when public is set' do
            user.should_receive(:post_to_facebook)
            post :create, status_message_hash
          end
    
    
          it 'should not post to facebook when public is not set' do
            status_message_hash['status_message']['public'] = 'false'
    
            user.should_not_receive(:post_to_facebook)
            post :create, status_message_hash
          end
        end
    
        context "posting to twitter" do
    
          let!(:service1) { s = Factory(:service, :provider => 'twitter'); user.services << s; s }
    
    
          it 'should post to twitter if public is set' do
            user.should_receive(:post_to_twitter).and_return(true)
            post :create, status_message_hash
          end
    
          it 'should not post to twitter when public in not set' do
    
            status_message_hash['status_message']['public'] = 'false'
    
            user.should_not_receive(:post_to_twitter)
            post :create, status_message_hash
          end
        end