Created
July 15, 2010 10:52
-
-
Save jzajpt/476801 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
context "when adding a nested doc and updating existing doc's attributes" do | |
let(:person) { Person.new } | |
before do | |
person.addresses << Address.new({ "street" => "Folsom", "city" => "San Francisco" }) | |
person.save! | |
@attributes = { | |
"0" => { "street" => "New Street" }, | |
"1" => { "street" => "5th Street", "city" => "Boston" }, | |
} | |
person.update_attributes :addresses_attributes => @attributes | |
end | |
after do | |
Person.delete_all | |
end | |
it "updates existing doc's attributes" do | |
person.addresses.first.street.should == "New Street" | |
end | |
it "appends a new doc" do | |
person.addresses.count.should == 2 | |
address = person.addresses.last | |
address.street.should == "5th Street" | |
address.city.should == "Boston" | |
end | |
end | |
1) Mongoid::Attributes updating nested docs when adding a nested doc and updating existing doc's attributes updates existing doc's attributes | |
Failure/Error: person.update_attributes :addresses_attributes => @attributes | |
have conflict mod | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/mongo-1.0.5/lib/../lib/mongo/connection.rb:383:in `send_message_with_safe_check' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/mongo-1.0.5/lib/../lib/mongo/collection.rb:330:in `update' | |
# ./spec/../lib/mongoid/collections/master.rb:15:in `send' | |
# ./spec/../lib/mongoid/collections/master.rb:15:in `update' | |
# ./spec/../lib/mongoid/collection.rb:19:in `send' | |
# ./spec/../lib/mongoid/collection.rb:19:in `update' | |
# ./spec/../lib/mongoid/persistence/update.rb:63:in `update' | |
# ./spec/../lib/mongoid/persistence/update.rb:45:in `persist' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:412:in `_run_update_callbacks' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:88:in `send' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:88:in `run_callbacks' | |
# ./spec/../lib/mongoid/persistence/update.rb:44:in `persist' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:437:in `_run_save_callbacks' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:88:in `send' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/activesupport-3.0.0.beta4/lib/active_support/callbacks.rb:88:in `run_callbacks' | |
# ./spec/../lib/mongoid/persistence/update.rb:43:in `persist' | |
# ./spec/../lib/mongoid/persistence.rb:77:in `update' | |
# ./spec/../lib/mongoid/persistence.rb:90:in `update_attributes' | |
# spec/integration/mongoid/attributes_spec.rb:118 | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/hooks.rb:78:in `instance_eval' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/hooks.rb:78:in `run_hook_in' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/hooks.rb:51:in `each' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/hooks.rb:51:in `run_hook' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:154:in `eval_before_eachs' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:154:in `each' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:154:in `eval_before_eachs' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example.rb:125:in `run_before_each' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example.rb:48:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example.rb:46:in `call' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example.rb:46:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:186:in `run_examples' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:183:in `map' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:183:in `run_examples' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:174:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `map' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `map' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/example_group.rb:175:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:38:in `run_examples' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/configuration.rb:118:in `inject' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:38:in `each' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:38:in `inject' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:38:in `run_examples' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:21:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/formatters/base_formatter.rb:37:in `report' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/formatters/base_formatter.rb:156:in `sync_output' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/formatters/base_formatter.rb:34:in `report' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/command_line.rb:18:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/runner.rb:46:in `run_in_process' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/runner.rb:37:in `run' | |
# /Users/jzajpt/.rvm/gems/ruby-1.8.7-p299@rails3/gems/rspec-core-2.0.0.beta.16/lib/rspec/core/runner.rb:10:in `autorun' | |
# spec/integration/mongoid/attributes_spec.rb:3 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment