Merge pull request #14911 from estsauver/14908

Propagate test messages through assert_routing helper, Fixes #14908
Do not mark object as persisted after an association is saved

Callback order in Active Record objects are important. Users should not
define callbacks before the association definition or surprising
behaviours like the described at #3798 will happen. This callback order
dependency is documented at https://github.com/rails/rails/blob/31bfcdc77ca0d8cec9b5fe513bdc6f05814dd4f1/activerecord/lib/active_record/associations.rb#L1222-1227.

This reverts #15728.

Fixes #16620.

Conflicts:
	activerecord/test/cases/associations/has_many_associations_test.rb
fix the undefined method content_tag #15245
not required include ActionView::Helpers::TagHelper in test as well
Merge remote-tracking branch 'rails/4-1-stable' into 4-1-stable