Sha256: 9e127a99a4e31f8dd03c7898d7e5990157415179a09d5a4fa8ace55f47758c42

Contents?: true

Size: 956 Bytes

Versions: 5

Compression:

Stored size: 956 Bytes

Contents

require 'active_record'
require 'schedule_attributes/active_record'

class ActiveRecord::Base
  extend ScheduleAttributes::ActiveRecord::Sugar

  establish_connection( adapter: "sqlite3", database: ":memory:" )
end

ActiveRecord::Migration.create_table :calendars do |t|
  t.text :schedule
  t.text :my_schedule
end

class CustomScheduledActiveRecordModel < ActiveRecord::Base
  self.table_name = :calendars
  has_schedule_attributes :column_name => :my_schedule

  def default_schedule
    s = IceCube::Schedule.new(Date.today.to_time)
    s.add_recurrence_rule IceCube::Rule.hourly
    s
  end

  def initialize(*args)
    super
    @can_access_default_schedule_in_initialize = my_schedule.next_occurrence
  end
end

class DefaultScheduledActiveRecordModel < ActiveRecord::Base
  self.table_name = :calendars
  has_schedule_attributes

  def initialize(*args)
    super
    @can_access_default_schedule_in_initialize = schedule.next_occurrence
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dgp-schedule_attributes-0.5.3 spec/support/scheduled_active_record_model.rb
dgp-schedule_attributes-0.5.2 spec/support/scheduled_active_record_model.rb
dgp-schedule_attributes-0.5.1 spec/support/scheduled_active_record_model.rb
dgp-schedule_attributes-0.5.0 spec/support/scheduled_active_record_model.rb
dgp-schedule_attributes-0.4.0 spec/support/scheduled_active_record_model.rb