Sha256: ce281276172363c05c92cfe0f5910e25ba81cea95ade5a0ce6998f0b98f0e21f

Contents?: true

Size: 1.91 KB

Versions: 25

Compression:

Stored size: 1.91 KB

Contents

require 'spec_helper'

describe ProfilesController do
  include SocialStream::TestHelpers
  render_views

  context "for a user" do
    before do
      @user = Factory(:user)
      sign_in @user
    end

    it "should render show" do
      get :show

      assert_response :success
    end

    it "should render show.json" do
      get :show, format: :json

      assert_response :success
    end

    it "should render show with user param" do
      get :show, :user_id => @user.to_param

      assert_response :success
    end

    it "should update" do
      put :update, :user_id => @user.to_param, :profile => { :organization => "Social Stream" }

      response.should redirect_to([@user, :profile])
    end

    it "should update via AJAX" do
      put :update, :user_id => @user.to_param, :profile => { :organization => "Social Stream" }, :format => :js

      response.should be_success
    end


    it "should not update other's" do
      begin
        put :update, :user_id => Factory(:user).to_param, :profile => { :organization => "Social Stream" }

        assert false
      rescue CanCan::AccessDenied
        assert true
      end
    end

  end

  context "for a group" do
    before do
      membership = Factory(:member)
      @group = membership.sender_subject
      @user  = membership.receiver_subject

      sign_in @user
      represent @group
    end

    it "should render show" do
      get :show, :group_id => @group.to_param

      assert_response :success
    end

    it "should update" do
      put :update, :group_id => @group.to_param, :profile => { :organization => "Social Stream" }

      response.should redirect_to([@group, :profile])
    end

    it "should not update other's" do
      begin
        put :update, :group_id => Factory(:group).to_param, :profile => { :organization => "Social Stream" }

        assert false
      rescue CanCan::AccessDenied
        assert true
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 2 rubygems

Version Path
social_stream-2.2.2 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.2.2 spec/controllers/profiles_controller_spec.rb
social_stream-2.2.1 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.2.1 spec/controllers/profiles_controller_spec.rb
social_stream-2.2.0 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.2.0 spec/controllers/profiles_controller_spec.rb
social_stream-2.1.1 base/spec/controllers/profiles_controller_spec.rb
social_stream-2.1.0 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.1.0 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.4 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.0.4 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.3 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.0.3 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.2 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.0.2 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.1 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.0.1 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.0 base/spec/controllers/profiles_controller_spec.rb
social_stream-base-2.0.0 spec/controllers/profiles_controller_spec.rb
social_stream-2.0.0.beta3 base/spec/controllers/profiles_controller_spec.rb