diff options
author | Sean Griffin <sean@seantheprogrammer.com> | 2016-09-29 14:57:31 -0400 |
---|---|---|
committer | Sean Griffin <sean@seantheprogrammer.com> | 2016-09-29 14:57:31 -0400 |
commit | 268a5bb010ef91880d9b03b60e5e86ae5521e73c (patch) | |
tree | 4a0802c7cd40df60f312745f5695b5e9124a668b /activerecord/test/models | |
parent | 09487dc86c134f99d2d385f090ea3cfc9e69dc40 (diff) | |
download | rails-268a5bb010ef91880d9b03b60e5e86ae5521e73c.tar.gz rails-268a5bb010ef91880d9b03b60e5e86ae5521e73c.tar.bz2 rails-268a5bb010ef91880d9b03b60e5e86ae5521e73c.zip |
Don't skip in-memory insertion of associations when loaded in validate
This was caused by 6d0d83a33f59d9415685852cf77818c41e2e2700. While the
bug it's trying to fix is handled if the association is loaded in an
after_(create|save) callback, it doesn't handle any cases that load the
association before the persistence takes place (validation, or before_*
filters). Instead of caring about the timing of persistence, we can just
ensure that we're not double adding the record instead.
The test from that commit actually broke, but it was not because the bug
has been re-introduced. It was because `Bulb` in our test suite is doing
funky things that look like STI but isn't STI, so equality comparison
didn't happen as the loaded model was of a different class.
Fixes #26661.
Diffstat (limited to 'activerecord/test/models')
-rw-r--r-- | activerecord/test/models/bulb.rb | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/activerecord/test/models/bulb.rb b/activerecord/test/models/bulb.rb index 3196207ac9..113d21cb84 100644 --- a/activerecord/test/models/bulb.rb +++ b/activerecord/test/models/bulb.rb @@ -50,9 +50,3 @@ class FailedBulb < Bulb throw(:abort) end end - -class TrickyBulb < Bulb - after_create do |record| - record.car.bulbs.to_a - end -end |