• F
    Fix fragile test (`AssociationProxyTest#test_save_on_parent_saves_children`) · e9b638fd
    Fumiaki MATSUSHIMA 提交于
    If we run only following tests:
    
    - test/cases/scoping/default_scoping_test.rb
    - test/cases/associations_test.rb
    
    ```
    $ cat Rakefile.test
    require "rake/testtask"
    
    ENV["ARCONN"] = "postgresql"
    
    Rake::TestTask.new do |t|
      t.libs << "test"
      t.test_files = %w(
        test/cases/scoping/default_scoping_test.rb
        test/cases/associations_test.rb
      )
    end
    ```
    
    a test will fail:
    
    ```
    $ bundle exec rake test -f Rakefile.test
    /app/activesupport/lib/active_support/core_ext/enumerable.rb:20: warning: method redefined; discarding old sum
    Using postgresql
    Run options: --seed 11830
    
    # Running:
    
    .........................................................................................F................
    
    Finished in 6.939055s, 15.2759 runs/s, 27.9577 assertions/s.
    
      1) Failure:
    AssociationProxyTest#test_save_on_parent_saves_children [/app/activerecord/test/cases/associations_test.rb:185]:
    Expected: 1
      Actual: 2
    
    106 runs, 194 assertions, 1 failures, 0 errors, 0 skips
    rake aborted!
    Command failed with status (1)
    /usr/local/bin/bundle:22:in `load'
    /usr/local/bin/bundle:22:in `<main>'
    Tasks: TOP => test
    (See full trace by running task with --trace)
    ```
    
    In #28083, change `self.use_transactional_tests` to `false`
    but we forget to clean-up fixture.
    However we don't have to disable transaction except a few tests.
    e9b638fd
default_scoping_test.rb 19.6 KB