mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-08 16:53:23 +00:00
27 lines
801 B
Python
27 lines
801 B
Python
import httplib
|
|
from contextlib import contextmanager
|
|
from .stubs import VCRHTTPConnection, VCRHTTPSConnection
|
|
|
|
_HTTPConnection = httplib.HTTPConnection
|
|
_HTTPSConnection = httplib.HTTPSConnection
|
|
|
|
|
|
def install(cassette_path):
|
|
httplib.HTTPConnection = httplib.HTTP._connection_class = VCRHTTPConnection
|
|
httplib.HTTPSConnection = httplib.HTTPS._connection_class = VCRHTTPSConnection
|
|
httplib.HTTPConnection._vcr_cassette_path = cassette_path
|
|
httplib.HTTPSConnection._vcr_cassette_path = cassette_path
|
|
|
|
|
|
def reset():
|
|
httplib.HTTPConnection = httplib.HTTP._connection_class = _HTTPConnection
|
|
httplib.HTTPSConnection = httplib.HTTPS._connection_class = \
|
|
_HTTPSConnection
|
|
|
|
|
|
@contextmanager
|
|
def use_cassette(cassette_path):
|
|
install(cassette_path)
|
|
yield
|
|
reset()
|