1.2 KiB
#VCR.py
This is a proof-of-concept start at a python version of Ruby's VCR library.
##What it is supposed to do Simplify testing by recording all HTTP interactions and saving them to "cassette" files, which are just yaml files. Then when you run your tests again, they all just hit the text files instead of the internet. This speeds up your tests and lets you work offline.
##Compatibility Notes Currently I've only tested this (a little bit) with urllib2. It's known to NOT WORK with urllib.
##How to use it
import vcr
import urllib2
with vcr.use_cassette('fixtures/vcr_cassettes/synopsis.yaml'):
response = urllib2.urlopen('http://www.iana.org/domains/example/').read()
assert 'Example Domains' in response
##Ruby VCR compatibility I'm not trying to match the format of the YAML files. Cassettes generated by Ruby's VCR are not compatible with VCR.py. The API is similar but I don't have nearly as many features
##Similar libraries in Python Neither of these really implement the API I want, but I have cribbed some code from them.