2012-01-18 4 views
2

좋아, 그래서 내 테스트 스위트 속도를 조금 비열 거리는 짓을하려고 해요. 내 레일 애플 리케이션 회담 데이터베이스에 연결된 이벤트 머신 기반의 서버가 있습니다.레일스 테스트에서 데이터베이스에 수동으로 다시 연결

각 테스트에서이 EM 서버를 회전 시키면 영원히이 걸리므로 전체 테스트 스위트를 실행하는 동안 계속 실행하고 싶습니다.

그러나 EM 서버 프로세스는 DB와 대화하고 각 테스트가 끝날 때 테스트 DB를 재설정하면 매우 불쾌한보고 용 오류가 많이 발생합니다.

EM 서버가 각각의 새로운 테스트를 시작할 때 테스트 DB에 대한 연결을 재설정하도록 말할 수 있다면이 문제를 피할 수있을 것이라고 생각합니다.

어떻게 할 수 있습니까?

답변

1

어댑터에 reconnect!을 호출 해 보았습니까?

http://apidock.com/rails/ActiveRecord/ConnectionAdapters/AbstractAdapter/reconnect%21

+0

감사합니다. Xavier! 덕분에 코드를 완벽하게 관리 할 수 ​​있었고 테스트 스위트에서 몇 분을 절약 할 수있었습니다 :) –

+0

연결을 처리하면 도움이됩니다. 내 경우에는 $ connection = ActiveRecord :: Base.establish_connection (@rails_env)이므로 나중에 $ connection.connection.reconnect를 호출 할 수 있습니다! 내가보고있는 이벤트에서 재 연결을 트리거합니다. –

관련 문제