Sha256: 2335914d2acfe94a79d386558b27d264124e05a6c28ce8ce526690d673e73751

Contents?: true

Size: 1.21 KB

Versions: 16

Compression:

Stored size: 1.21 KB

Contents

FactoryGirl.define do
  factory :user do
    sequence :email do |n|
      "#{name.tr(' ', '.').downcase}#{n}@example.com"
    end
    password 'password'
    password_confirmation 'password'
    transient do
      plan { PaidUp::Plan.order('RANDOM()').first }
      past_due false
    end
    # the after(:create) yields two values; the user instance itself and the
    # evaluator, which stores all values from the factory, including transient
    # attributes; `create_list`'s second argument is the number of records
    # to create and we make sure the user is associated properly to the post
    after(:create) do |user, evaluator|
      if evaluator.past_due
        token = Stripe::Token.create(
          card: {
            number: '4000000000000341',
            exp_month: 1,
            exp_year: 45,
            cvc: '111'
          }
        ).id
        trial_end = 5.seconds.from_now.to_time.to_i
      else
        token = Stripe::Token.create(
          card: {
            number: '4242424242424242',
            exp_month: 1,
            exp_year: 45,
            cvc: '111'
          }
        ).id
        trial_end = nil
      end
      user.subscribe_to_plan(evaluator.plan, token, trial_end)
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
paid_up-0.11.7 spec/factories/user.rb
paid_up-0.11.6 spec/factories/user.rb
paid_up-0.11.5 spec/factories/user.rb
paid_up-0.11.4 spec/factories/user.rb
paid_up-0.11.3 spec/factories/user.rb
paid_up-0.11.2 spec/factories/user.rb
paid_up-0.11.1 spec/factories/user.rb
paid_up-0.11.0 spec/factories/user.rb
paid_up-0.10.4 spec/factories/user.rb
paid_up-0.10.3 spec/factories/user.rb
paid_up-0.10.2 spec/factories/user.rb
paid_up-0.10.1 spec/factories/user.rb
paid_up-0.10.0 spec/factories/user.rb
paid_up-0.9.16 spec/factories/user.rb
paid_up-0.9.15 spec/factories/user.rb
paid_up-0.9.14 spec/factories/user.rb