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

107 Commits

Author SHA1 Message Date
Kevin McCarthy
d4494bae50 Let's have the new exceptions subclass basic exception types 2013-12-19 19:43:32 -10:00
Marc Abramowitz
a6806f2f99 Nicer error when cassette doesn't contain request
Raise UnhandledHTTPRequestError.
Show name of cassette and request.
2013-12-19 15:41:04 -08:00
Kevin McCarthy
624212ef15 Store Headers as a List
This is a backwards-incompatible change that will store headers
as a list rather than a dictionary.  The reason being that you can
have multiple values for a single header, and concatenating them
together with commas can create an unparseable string (sometimes
the header values can have commas in them)
2013-12-15 16:56:39 -10:00
Kevin McCarthy
144d25bc66 Add Decorator Support 2013-12-15 16:56:25 -10:00
Kevin McCarthy
188b57a2fa 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.
2013-12-01 14:26:35 -10:00
Marc Abramowitz
5ba4000f77 Add test: test_session_and_connection_close
This is a test for issue GH-48.
2013-11-26 12:07:13 -08:00
Kevin McCarthy
89403c255c Record Multiple Matching Requests
This change allows us to record multiple matching requests to
the same URL, and then play them back sequentially.

Closes #40, #41
2013-11-10 12:17:39 -10:00
Veros Kaplan
d50ded68ca Added test: accessing same recource three times in once mode 2013-11-10 10:54:09 -10:00
Veros Kaplan
16fa4f851d Added test: accessing two times same page 2013-11-10 10:54:09 -10:00
Kevin McCarthy
b0a13ba690 Fix Requests so it can gunzip the request body
I wasn't emulating the stateful file-object in my response stub,
so urllib3 wasn't decompressing gzipped bodies properly.  This
should fix that problem.

Thanks @bryanhelmig for the motivation to dig into this.
2013-11-09 17:51:29 -10:00
Kevin McCarthy
deed8cab97 Fix issue #36 - error message for unregistered matcher was broken 2013-09-29 15:56:50 -10:00
Hector Dearman
c03459e582 allow match_on to be passed as an argument VCR 2013-09-21 16:52:09 -10:00
Kevin McCarthy
912452e863 Only use the relative path in HTTP requests
This causes a pretty big problem on out-of-spec HTTP servers (like
Flickr). Closes #31
2013-09-17 13:19:26 -10:00
Kevin McCarthy
a66f462dcd Add support for custom request matchers
This commit not only changes the default method of matching requests
(just match on method and URI instead of the entire request + headers)
but also allows the user to add custom matchers.
2013-09-16 20:46:00 -10:00
Kevin McCarthy
03c22d79dd Add support for configurable record modes
This support will let you select one of four different behaviors
for VCR's cassettes.  Closes #23
2013-09-15 18:43:02 -10:00
Kevin McCarthy
5ce67dc023 Add support for calling httplib.send().
This commit changes the whole core internal flow of requests.
Now, requests are actually physically made lazily when a response
is requested.  This allows the entire request to be sent at once.

Otherwise, it would be impossible to compare whether requests have
already been recorded, since httplib.send() allows you to effectively
stream requests over HTTP.
2013-09-15 18:43:02 -10:00
Kevin McCarthy
c8299103fb pep8 fixes 2013-08-23 20:35:43 -10:00
Kevin McCarthy
6b8d4643e8 Fix intermittent test failure due to http happening too fast 2013-08-23 20:35:42 -10:00
shu zOMG chen
b55834e929 Don't save cassette when it hasn't been modified 2013-08-23 20:35:42 -10:00
Kevin McCarthy
7264780960 remove unused cassette in with statement 2013-08-22 19:18:58 -10:00
Kevin McCarthy
0f2695f240 add tests for registering serializer 2013-08-22 19:18:58 -10:00
shu zOMG chen
c5eca93edc Added test to confirm whether cStringIO works 2013-08-22 17:31:57 -10:00
Kevin McCarthy
b688dd362d test cassette library dir 2013-08-19 19:49:06 -10:00
Kevin McCarthy
28379e9000 start adding config tests 2013-08-19 19:49:06 -10:00
shu zOMG chen
51f0f1bacd Adding json serializer 2013-08-19 19:49:05 -10:00
Kevin McCarthy
3e247a2efb remove errant print statements 2013-08-19 19:34:38 -10:00
Kevin McCarthy
762b761d0c remove unused test file 2013-08-19 19:26:56 -10:00
Kevin McCarthy
348cc8fdfe Fix Google test Failure
Let's not use Google to test redirects since it changes depending on your
geographic location.  I changed the test to use httpbin.org, since
a lot of our tests already depend on httpbin.org anyway.

Somedays, I'd like to implement my own local mock HTTP server I
can do asserts against.  The test suite would just start it up,
and the server would record the requests, which I could then
retrieve and compare.

Closes #21
2013-08-18 12:09:18 -10:00
Kevin McCarthy
9d8084113d add the test from the readme 2013-08-11 18:42:09 -10:00
Kevin McCarthy
d00c27e244 refactor tests a bit 2013-08-11 18:23:46 -10:00
Kevin McCarthy
a6c59c20d2 remove debugging code from Request and add repr 2013-08-11 17:51:33 -10:00
Kevin McCarthy
ce88331ebe add test for redirects 2013-08-11 15:05:42 -10:00
Kevin McCarthy
f353a95af5 whats up with travis 2013-08-11 15:05:42 -10:00
Kevin McCarthy
ac862d5aff update test_wild path 2013-08-11 15:05:42 -10:00
Kevin McCarthy
768b61316a move wild into its own folder 2013-08-11 15:05:42 -10:00
Kevin McCarthy
a1229190f5 convert requests tests to pytest 2013-08-11 15:05:42 -10:00
Kevin McCarthy
c5294a09f7 convert tests to pytest 2013-08-11 15:05:41 -10:00
Kevin McCarthy
1a73334b50 update tests 2013-08-11 15:05:41 -10:00
Kevin McCarthy
d76c9994a7 update fixture to add proto 2013-08-11 15:05:41 -10:00
Kevin McCarthy
ec01955c68 lets store the proto too 2013-08-11 15:05:41 -10:00
Kevin McCarthy
59567a26cc lets make url the actual url instead of just the path 2013-08-11 15:05:41 -10:00
Kevin McCarthy
a50cebaf21 change response to response_of 2013-08-11 15:05:41 -10:00
Kevin McCarthy
4f0668471e Refactor again to try to give Cassette a cleaner interface 2013-08-11 15:05:41 -10:00
Kevin McCarthy
ac2f21b318 remove extra whitespace 2013-08-11 15:05:41 -10:00
Kevin McCarthy
e39b48e73b add a couple more tests, change played api to require request being played 2013-08-11 15:05:41 -10:00
Kevin McCarthy
4cdf5f7483 update cassette unit tests 2013-08-11 15:05:41 -10:00
Kevin McCarthy
87d27a7199 add requests class to sow the seeds of a custom matcher 2013-08-11 15:05:40 -10:00
Kevin McCarthy
166facd0d0 check that cassette contains things before returning 2013-08-11 15:05:40 -10:00
Kevin McCarthy
fb2aa89445 replace cached() with mark_played / play_count 2013-08-11 15:05:40 -10:00
Kevin McCarthy
2ed4b730c4 oops, shouldnt have removed that file 2013-08-11 15:05:40 -10:00