2014-04-20 5 views
0

내 VCR의 구성 블록은 다음과 같습니다레일/VCR 보석, 같은 URI 다른 방법 충돌 (해결)

VCR.configure do |c| 
    c.cassette_library_dir = 'spec/fixtures/vcr_cassettes' 
    c.hook_into :webmock 

    c.around_http_request(lambda { |req| req.uri =~ /google.com/ }) do |request| 
    VCR.use_cassette(request.uri, :decode_compressed_response => true, &request) 
    end 
end 

내 테스트 post/get/put 방법에 대해 잘 작동하지만 DELETE하려고 할 때, VCR에서 충돌이 있기 때문에 이전 PUT 요청과 일치합니다. 이것은 요청에 대한 URI가 DELETE 요청에 필요한 URI와 동일하기 때.입니다.

use_cassette 메서드를 변경하여 URI + 메서드 조합을 사용하려면 어떻게해야합니까? (또는 다른 제안도 환영합니다!)

고마워요!

답변

0

를 해결,이 때문에 이곳을 떠나 다른 사람을 도울 수 있습니다

VCR.use_cassette([request.uri,request.method].join.to_s, :match_requests_on => [:method, :uri], :decode_compressed_response => true, &request)