From e10a2491d3448ff8b02748d79a2226f8b12ac348 Mon Sep 17 00:00:00 2001 From: raluka Date: Wed, 26 Aug 2015 13:07:13 +0200 Subject: [PATCH] created tests for user ability --- app/models/ability.rb | 9 ++++----- app/views/layouts/_navigation.html.haml | 2 +- spec/models/ability_spec.rb | 9 ++++++++- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/app/models/ability.rb b/app/models/ability.rb index c6f0eb64..974f3993 100644 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -137,9 +137,8 @@ class Ability can :manage, Sponsor, conference_id: conf_ids_for_organizer can :manage, SponsorshipLevel, conference_id: conf_ids_for_organizer can :manage, Ticket, conference_id: conf_ids_for_organizer - can [:read, :create], Comment, commentable_type: 'Event', - commentable_id: Event.where(conference_id: conf_ids_for_organizer).pluck(:id) - + can [:index, :create], Comment, commentable_type: 'Event', + commentable_id: Event.where(conference_id: conf_ids_for_organizer).pluck(:id) end def signed_in_with_cfp_role(user) @@ -158,8 +157,8 @@ class Ability can :manage, CallForPaper, conference_id: conf_ids_for_cfp can :manage, Commercial, commercialable_type: 'Event', commercialable_id: Event.where(conference_id: conf_ids_for_cfp).pluck(:id) - can [:read, :create], Comment, commentable_type: 'Event', - commentable_id: Event.where(conference_id: conf_ids_for_cfp).pluck(:id) + can [:index, :create], Comment, commentable_type: 'Event', + commentable_id: Event.where(conference_id: conf_ids_for_cfp).pluck(:id) end def signed_in_with_info_desk_role(user) diff --git a/app/views/layouts/_navigation.html.haml b/app/views/layouts/_navigation.html.haml index 000e46f9..60e32c12 100644 --- a/app/views/layouts/_navigation.html.haml +++ b/app/views/layouts/_navigation.html.haml @@ -25,7 +25,7 @@ %b.caret %ul.dropdown-menu = render 'layouts/user_menu' - - if can? :read, Comment + - if can? :index, Comment #TODO modify condition %ul.nav.navbar-nav.navbar-right %li.dropdown %a.dropdown-toggle{"data-toggle" => "dropdown", :href => "#", id: "unread-comments-preview"} diff --git a/spec/models/ability_spec.rb b/spec/models/ability_spec.rb index 1c390f87..30593a75 100644 --- a/spec/models/ability_spec.rb +++ b/spec/models/ability_spec.rb @@ -141,7 +141,8 @@ describe 'User' do it{ should_not be_able_to(:manage, other_event.difficulty_level) } it{ should be_able_to(:manage, event.commercials.first) } it{ should_not be_able_to(:manage, other_event.commercials.first) } - it{ should be_able_to([:read, :create], event.comment_threads.first) } + it{ should be_able_to(:create, event.comment_threads.first) } + it{ should be_able_to(:index, event.comment_threads.first) } end context 'when user has the role cfp' do @@ -199,6 +200,8 @@ describe 'User' do it{ should_not be_able_to(:manage, other_event.difficulty_level) } it{ should be_able_to(:manage, event.commercials.first) } it{ should_not be_able_to(:manage, other_event.commercials.first) } + it{ should be_able_to(:create, event.comment_threads.first) } + it{ should be_able_to(:index, event.comment_threads.first) } end context 'when user has the role info_desk' do @@ -256,6 +259,8 @@ describe 'User' do it{ should_not be_able_to(:manage, other_event.difficulty_level) } it{ should_not be_able_to(:manage, event.commercials.first) } it{ should_not be_able_to(:manage, other_event.commercials.first) } + it{ should_not be_able_to(:create, event.comment_threads.first) } + it{ should_not be_able_to(:index, event.comment_threads.first) } end context 'when user has the role volunteers_coordinator' do @@ -313,6 +318,8 @@ describe 'User' do it{ should_not be_able_to(:manage, other_event.difficulty_level) } it{ should_not be_able_to(:manage, event.commercials.first) } it{ should_not be_able_to(:manage, other_event.commercials.first) } + it{ should_not be_able_to(:create, event.comment_threads.first) } + it{ should_not be_able_to(:index, event.comment_threads.first) } it 'should be_able to :manage Vposition' it 'should be_able to :manage Vday' end