Sha256: a3e9ef92acecff235dd64e18f4c764375288e80c0f7754882f6cdc0b8ff3c396

Contents?: true

Size: 1.41 KB

Versions: 27

Compression:

Stored size: 1.41 KB

Contents

# frozen_string_literal: true
# encoding: utf-8

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

27 entries across 27 versions & 2 rubygems

Version Path
mongoid-7.1.5 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.2.0.rc1 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.1.4 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.1.2 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.1.1 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.1.0 spec/mongoid/association/embedded/dirty_spec.rb
mongoid-7.1.0.rc0 spec/mongoid/association/embedded/dirty_spec.rb