2010-05-13 3 views
1

메모리 데이터베이스에 Sqlite3이있는 Datamapper을 쉽게 설정할 수 있습니다. DataMapper.setup : default, 'sqlite3 :: memory :'.Datamapper in Memory Database

그러나 테스트 할 때마다 automigrate를 호출하는 대신 각 테스트 후에 메모리 데이터베이스 전체를 파괴하고 싶습니다! 모든 것을 버리는 지름길. 가능한가? 또는 기본 저장소를 nil로 설정하고 가비지 컬렉터가 처리하도록하는 것으로 충분합니까?

답변

1

이 일을 내 방법 (RSpec에에)있다 :

Spec::Runner.configure do |config| 
    config.before(:all) do 
    DataMapper.auto_migrate! 
    end 

    config.before(:each) do 
    DataMapper::Repository.context << repository(:default) 
    end 

    config.after(:each) do 
    DataMapper::Repository.context.pop 
    end 
end