mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-09 17:15:35 +00:00
Added checkfor old cassette on load cassete to persist module
This commit is contained in:
@@ -1,9 +1,31 @@
|
||||
import tempfile
|
||||
|
||||
from .persisters.filesystem import FilesystemPersister
|
||||
from . import migration
|
||||
|
||||
|
||||
def _check_for_old_cassette(cassette_content):
|
||||
# crate tmp with cassete content and try to migrate it
|
||||
with tempfile.NamedTemporaryFile(mode='w+') as f:
|
||||
f.write(cassette_content)
|
||||
f.seek(0)
|
||||
if migration.try_migrate(f.name):
|
||||
raise ValueError(
|
||||
"Your cassette files were generated in an older version "
|
||||
"of VCR. Delete your cassettes or run the migration script."
|
||||
"See http://git.io/mHhLBg for more details."
|
||||
)
|
||||
|
||||
|
||||
def load_cassette(cassette_path, serializer):
|
||||
with open(cassette_path) as f:
|
||||
return serializer.deserialize(f.read())
|
||||
cassette_content = f.read()
|
||||
try:
|
||||
cassette = serializer.deserialize(cassette_content)
|
||||
except TypeError:
|
||||
_check_for_old_cassette(cassette_content)
|
||||
raise
|
||||
return cassette
|
||||
|
||||
|
||||
def save_cassette(cassette_path, cassette_dict, serializer):
|
||||
|
||||
Reference in New Issue
Block a user