Sha256: a53f046839c78f3775fd733c3d06bedf123dae00f8db205910c09d5bd62b155a

Contents?: true

Size: 1.25 KB

Versions: 38

Compression:

Stored size: 1.25 KB

Contents

class Record
  include Mongoid::Document
  field :name, type: String
  field :producers, type: Array

  field :before_create_called, type: Mongoid::Boolean, default: false
  field :before_save_called, type: Mongoid::Boolean, default: false
  field :before_update_called, type: Mongoid::Boolean, default: false
  field :before_validation_called, type: Mongoid::Boolean, default: false
  field :before_destroy_called, type: Mongoid::Boolean, default: false

  embedded_in :band
  embeds_many :tracks, cascade_callbacks: true
  embeds_many :notes, as: :noteable, cascade_callbacks: true, validate: false

  before_create :before_create_stub
  before_save :before_save_stub
  before_update :before_update_stub
  before_validation :before_validation_stub
  before_destroy :before_destroy_stub

  after_destroy :access_band

  def before_create_stub
    self.before_create_called = true
  end

  def before_save_stub
    self.before_save_called = true
  end

  def before_update_stub
    self.before_update_called = true
  end

  def before_validation_stub
    self.before_validation_called = true
  end

  def before_destroy_stub
    self.before_destroy_called = true
  end

  def access_band
    band.name
  end

  def dont_call_me_twice
  end

  validate { dont_call_me_twice }
end

Version data entries

38 entries across 36 versions & 2 rubygems

Version Path
mongoid-7.0.13 spec/app/models/record.rb
mongoid-7.0.12 spec/app/models/record.rb
mongoid-6.4.8 spec/app/models/record.rb
mongoid-7.0.11 spec/app/models/record.rb
mongoid-7.0.10 spec/app/models/record.rb
mongoid-6.4.7 spec/app/models/record.rb
mongoid-6.4.5 spec/app/models/record.rb
mongoid-7.0.8 spec/app/models/record.rb
mongoid-7.0.7 spec/app/models/record.rb
mongoid-7.0.6 spec/app/models/record.rb
mongoid-7.0.5 spec/app/models/record.rb
mongoid-7.0.4 spec/app/models/record.rb
mongoid-6.4.4 spec/app/models/record.rb
mongoid-7.0.3 spec/app/models/record.rb
mongoid-6.4.2 spec/app/models/record.rb
mongoid-7.0.2 spec/app/models/record.rb
mongoid-7.0.1 spec/app/models/record.rb
mongoid-6.4.1 spec/app/models/record.rb
tdiary-5.0.8 vendor/bundle/gems/mongoid-6.4.0/spec/app/models/record.rb
mongoid-7.0.0 spec/app/models/record.rb