Sha256: 3d2f01d0221c9b72ac367224175c94ae04ac369cf2f0e01f4c9e2b6c81540839

Contents?: true

Size: 1.13 KB

Versions: 2

Compression:

Stored size: 1.13 KB

Contents

# frozen_string_literal: true

require "factory_bot"
require "securerandom"

FactoryBot.define do
  factory :meibo_enrollment, class: "Meibo::Enrollment" do
    initialize_with { new(**attributes) }

    transient do
      classroom { nil }
      school { nil }
      user { nil }
    end

    sourced_id { SecureRandom.uuid }
    class_sourced_id { classroom&.sourced_id }
    school_sourced_id { school&.sourced_id }
    user_sourced_id { user&.sourced_id }

    trait :administrator do
      role { Meibo::Enrollment::ROLES[:administrator] }
    end

    trait :proctor do
      role { Meibo::Enrollment::ROLES[:proctor] }
    end

    trait :student do
      role { Meibo::Enrollment::ROLES[:student] }
    end

    trait :teacher do
      role { Meibo::Enrollment::ROLES[:teacher] }
    end

    trait :jp do
      initialize_with { Meibo::JapanProfile::Enrollment.new(**attributes) }
    end

    trait :guardian do
      role { Meibo::Enrollment::ROLES[:guardian] }
    end

    trait :public do
      public_flg { true }
    end

    trait :private do
      public_flg { false }
    end

    trait :eportal do
      primary { false }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
meibo-0.27.1 lib/meibo/factory_bot/enrollment.rb
meibo-0.27.0 lib/meibo/factory_bot/enrollment.rb