Sha256: 4ae9df356ea38e9d81af2a8e83f005a511c366b7262785cc986ad3756efc5ad9

Contents?: true

Size: 1.37 KB

Versions: 40

Compression:

Stored size: 1.37 KB

Contents

# frozen_string_literal: true

FactoryBot.define do
  sequence :email do |n|
    "renalware.user-#{n}@nhs.net"
  end

  sequence :username do |n|
    "renalwareuser-#{n}"
  end

  factory :user, class: "Renalware::User" do
    given_name { Faker::Name.first_name }
    family_name { Faker::Name.last_name }
    username
    email
    password "supersecret"
    approved true
    professional_position "Health Minister"
    signature { Faker::Name.name }

    # By default a user has no roles.
    # If you want a use with a role, use a trait, e.g. create(:user, :clinical)
    transient do
      role nil
    end

    after(:create) do |user, obj|
      if obj.role.present?
        user.roles << create(:role, obj.role)
      end
    end

    trait :unapproved do
      approved false
    end

    trait :author do
      signature { Faker::Name.name }
    end

    trait :expired do
      last_activity_at { 90.days.ago }
      expired_at { Time.zone.now }
    end

    trait :super_admin do
      transient do
        role :super_admin
      end
    end

    trait :admin do
      transient do
        role :admin
      end
    end

    trait :clinical do
      given_name "Aneurin"
      family_name "Bevan"
      signature "Aneurin Bevan"

      transient do
        role :clinical
      end
    end

    trait :read_only do
      transient do
        role :read_only
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
renalware-core-2.0.21 spec/factories/system/users.rb
renalware-core-2.0.20 spec/factories/system/users.rb
renalware-core-2.0.18 spec/factories/system/users.rb
renalware-core-2.0.17 spec/factories/system/users.rb
renalware-core-2.0.16 spec/factories/system/users.rb
renalware-core-2.0.15 spec/factories/system/users.rb
renalware-core-2.0.14 spec/factories/system/users.rb
renalware-core-2.0.13 spec/factories/system/users.rb
renalware-core-2.0.12 spec/factories/system/users.rb
renalware-core-2.0.11 spec/factories/system/users.rb
renalware-core-2.0.9 spec/factories/system/users.rb
renalware-core-2.0.8 spec/factories/system/users.rb
renalware-core-2.0.7 spec/factories/system/users.rb
renalware-core-2.0.5 spec/factories/system/users.rb
renalware-core-2.0.4 spec/factories/system/users.rb
renalware-core-2.0.3 spec/factories/system/users.rb
renalware-core-2.0.2 spec/factories/system/users.rb
renalware-core-2.0.1 spec/factories/system/users.rb
renalware-core-2.0.0 spec/factories/system/users.rb
renalware-core-2.0.0.pre.rc13 spec/factories/system/users.rb