So the other day I was facing this issue with Rails where the data created in a test would not get deleted from my secondary database.
The database was not cleaning up after the first test. the order didn’t matter. which ever test runs first the records created in that block were not deleted. after thorough debugging i found that there is a block inside actived record which rollsback the db. here is that block (https://github.com/rails/rails/blob/master/activerecord/lib/active_record/fixtures.rb#L1008).
So in case of the first test the
So for my secondary db I had created an abstract class
So adding
hope this helped!
The database was not cleaning up after the first test. the order didn’t matter. which ever test runs first the records created in that block were not deleted. after thorough debugging i found that there is a block inside actived record which rollsback the db. here is that block (https://github.com/rails/rails/blob/master/activerecord/lib/active_record/fixtures.rb#L1008).
So in case of the first test the
@fixture_connections count is 1 it only contains the primary db connection.So for my secondary db I had created an abstract class
SecondaryModel which inherited from ActiveRecord::Base So adding
SecondaryModel.connection to test_helper solved this problem.hope this helped!