Sha256: defc99818a28f369d96facadca4f933b257046e9ccb8a1b5f6cc9acab37b7c2e

Contents?: true

Size: 1.33 KB

Versions: 3

Compression:

Stored size: 1.33 KB

Contents

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
    person.pet.changes.should_not be_empty
  end

  it "does not have previous_changes in the embedded model" do
    person.pet.previous_changes.should 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
    person.pet.changes.should be_empty
  end

  it "has previous_changes in the embedded model" do
    person.pet.previous_changes.should_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
    person.pet.changes.should be_empty
  end

  it "has previous changes on the embedded model" do
    person.pet.previous_changes.should_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
      person.pet.changes.should be_empty
    end

    it "does not have previous changes on the embedded model" do
      person.pet.previous_changes.should be_empty
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mongoid-3.1.7 spec/mongoid/relations/embedded/dirty_spec.rb
mongoid-3.1.6 spec/mongoid/relations/embedded/dirty_spec.rb
mongoid-3.1.5 spec/mongoid/relations/embedded/dirty_spec.rb