mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Allow to create order_cycle_schedules
There's no way we can create an order_cycle_schedules if the schedule doesn't have an id, which we can't get if to persist it we need an OC first, which in turn, will create an order_cycle_schedules.
This commit is contained in:
@@ -3,9 +3,8 @@ class Schedule < ActiveRecord::Base
|
||||
|
||||
has_many :order_cycles, through: :order_cycle_schedules
|
||||
has_many :order_cycle_schedules, dependent: :destroy
|
||||
has_many :coordinators, -> { uniq }, through: :order_cycles
|
||||
|
||||
validates :order_cycles, presence: true
|
||||
has_many :coordinators, -> { uniq }, through: :order_cycles
|
||||
|
||||
scope :with_coordinator, lambda { |enterprise| joins(:order_cycles).where('coordinator_id = ?', enterprise.id).select('DISTINCT schedules.*') }
|
||||
|
||||
|
||||
@@ -28,7 +28,16 @@ FactoryBot.define do
|
||||
|
||||
factory :schedule, class: Schedule do
|
||||
sequence(:name) { |n| "Schedule #{n}" }
|
||||
order_cycles { [OrderCycle.first || FactoryBot.create(:simple_order_cycle)] }
|
||||
|
||||
transient do
|
||||
order_cycles { [OrderCycle.first || create(:simple_order_cycle)] }
|
||||
end
|
||||
|
||||
before(:create) do |schedule, evaluator|
|
||||
evaluator.order_cycles.each do |order_cycle|
|
||||
order_cycle.schedules << schedule
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
factory :proxy_order, class: ProxyOrder do
|
||||
|
||||
Reference in New Issue
Block a user