Sha256: ed838baaf0941a509f1f4ac20a4d824b8b843307b8c5dfb0530dd4e1ad3fbced

Contents?: true

Size: 1.77 KB

Versions: 13

Compression:

Stored size: 1.77 KB

Contents

# Define some basic factories for testing within our sample app
FactoryGirl.define do
  factory :permission do
    sequence(:name) { |n| "Permission #{n}" }
    key { "sample" }
    description { "This is just a ample permission, it does nothing" }

    factory :admin_permission do
      name { "Administrator" }
      key { "admin" }
    end

    factory :users_permission do
      name { "Manage Users" }
      key { "manage_users" }
    end
  end 

  factory :role do
    name { "Sample Role" }
    default_path { "/" }
    description { "Role Description" }

    factory :administrator_role do
      name "Administrator"
      
      after_create do |role| 
        Factory(:admin_permission_role, :role => role)
        Factory(:user_permission_role, :role => role)
      end
    end
    
    factory :default_role do
      name { "Default" }
    end
  end

  factory :admin_permission_role, :class => :permission_role do
    association :permission, :factory => :admin_permission
  end

  factory :user_permission_role, :class => :permission_role do
    association :permission, :factory => :users_permission
  end

  factory :user do
    first_name "Test"
    last_name "User"
    sequence(:username) { |n| "user#{n}" }
    sequence(:email) { |n| "email#{n}@example.com" }
    password { "abc123" }
    password_confirmation { "abc123" }
    role_id { "1" }

    factory :plain_user do
      first_name { "Plain" }
      sequence(:username) { |n| "plain#{n}" }
      role_id nil
    end
    
    factory :normal_user do
      first_name { "Normal" }
      sequence(:username) { |n| "normal#{n}" }
    end

    factory :admin_user do
      first_name { "Admin" }
      sequence(:username) { |n| "admin#{n}" }
      association :role, :factory => :administrator_role
    end
  end
end # end FactoryGirl.define

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
challah-0.5.2 test/factories.rb
challah-0.5.1 test/factories.rb
challah-0.5.0 test/factories.rb
challah-0.4.1 test/factories.rb
challah-0.4.0 test/factories.rb
challah-0.3.5 test/factories.rb
challah-0.3.4 test/factories.rb
challah-0.3.3 test/factories.rb
challah-0.3.2 test/factories.rb
challah-0.3.1 test/factories.rb
challah-0.3.0 test/factories.rb
challah-0.2.1 test/factories.rb
challah-0.2.0 test/factories.rb