1
0
mirror of https://github.com/kevin1024/vcrpy.git synced 2025-12-10 01:25:34 +00:00

Fix API by adding 'responses_of' method

`responses_of` replaces `response_of`, since each request can have
several matching responses now.

This breaks backwards compatibility if you are using the
response_of method, so a version bump will be required.
This commit is contained in:
Kevin McCarthy
2013-12-01 14:26:35 -10:00
parent b84f8e963b
commit 188b57a2fa
4 changed files with 29 additions and 8 deletions

View File

@@ -44,14 +44,22 @@ def test_cassette_contains():
@mock.patch('vcr.cassette.requests_match', _mock_requests_match)
def test_cassette_response_of():
def test_cassette_responses_of():
a = Cassette('test')
a.append('foo', 'bar')
assert a.response_of('foo') == 'bar'
assert a.responses_of('foo') == ['bar']
@mock.patch('vcr.cassette.requests_match', _mock_requests_match)
def test_cassette_get_missing_response():
a = Cassette('test')
with pytest.raises(KeyError):
a.response_of('foo')
a.responses_of('foo')
@mock.patch('vcr.cassette.requests_match', _mock_requests_match)
def test_cassette_cant_read_same_request_twice():
a = Cassette('test')
a.append('foo','bar')
a.play_response('foo')
with pytest.raises(KeyError):
a.play_response('foo')