Sha256: 27722d138419897cc8accf12b3cbb0f353e541adc63d12e91bfca44dc73a4135

Contents?: true

Size: 1.4 KB

Versions: 29

Compression:

Stored size: 1.4 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

describe "when initialize a model with an embedded model" do

  let(:person) do
    Person.new(pet: Pet.new)
  end

  it "has changes in the embedded model" do
    expect(person.pet.changes).to_not be_empty
  end

  it "does not have previous_changes in the embedded model" do
    expect(person.pet.previous_changes).to be_empty
  end
end

describe "when creating a model with an embedded model" do

  let(:person) do
    Person.create!(pet: Pet.new)
  end

  it "does not have changes in the embedded model" do
    expect(person.pet.changes).to be_empty
  end

  it "has previous_changes in the embedded model" do
    expect(person.pet.previous_changes).to_not be_empty
  end
end

describe "when embedding a model on an already saved model" do

  let(:person) do
    Person.create!
  end

  before do
    person.pet = Pet.new
  end

  it "has not changes on the embedded model" do
    expect(person.pet.changes).to be_empty
  end

  it "has previous changes on the embedded model" do
    expect(person.pet.previous_changes).to_not be_empty
  end

  describe "and saving the model" do

    before do
      person.save!
    end

    it "does not have changes on the embedded model" do
      expect(person.pet.changes).to be_empty
    end

    it "does not have previous changes on the embedded model" do
      expect(person.pet.previous_changes).to be_empty
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
mongoid-8.0.10 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.10 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.9 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.9 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.8 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.7 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.6 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.8 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.5 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.4 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.7 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.3 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.2 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.6 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.5.4 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.1 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.5 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.1.0 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.5.3 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-8.0.4 spec/mongoid/association/embedded/dirty_spec.rb