Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
activeadmin / features / authorization_cancan.feature
Size: Mime:
Feature: Authorizing Access using CanCan

  Background:
    Given I am logged in
    And 1 post exists
    And a configuration of:
    """
    require 'cancan'

    class ::Ability
      include ::CanCan::Ability

      def initialize(user)
        # Manage Posts
        can [:edit, :destroy], Post, :author_id => user.id
        can :read, Post

        # View Pages
        can :read, ActiveAdmin::Page, :name => "Dashboard"
        cannot :read, ActiveAdmin::Page, :name => "No Access"
      end

    end

    ActiveAdmin.application.namespace(:admin).authorization_adapter = ActiveAdmin::CanCanAdapter

    ActiveAdmin.register Post do
    end

    ActiveAdmin.register_page "No Access" do
    end
    """
    And I am on the index page for posts

  @allow-rescue
  Scenario: Attempt to access a resource I am not authorized to see
    When I go to the last post's edit page
    Then I should see "You are not authorized to perform this action"

  Scenario: Viewing the default action items
    When I follow "View"
    Then I should not see an action item link to "Edit"

  @allow-rescue
  Scenario: Attempting to visit a Page without authorization
    When I go to the admin no access page
    Then I should see "You are not authorized to perform this action"

  @allow-rescue
  Scenario: Viewing a page with authorization
    When I go to the admin dashboard page
    Then I should see "Dashboard"