mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-08 16:53:23 +00:00
Don't save cassette when it hasn't been modified
This commit is contained in:
committed by
Kevin McCarthy
parent
7264780960
commit
b55834e929
43
tests/integration/test_disksaver.py
Normal file
43
tests/integration/test_disksaver.py
Normal file
@@ -0,0 +1,43 @@
|
||||
'''Basic tests about save behavior'''
|
||||
# coding=utf-8
|
||||
|
||||
# External imports
|
||||
import os
|
||||
import urllib2
|
||||
|
||||
# Internal imports
|
||||
import vcr
|
||||
|
||||
def test_disk_saver_nowrite(tmpdir):
|
||||
'''Ensure that when you close a cassette without changing it it doesn't rewrite the file'''
|
||||
fname = str(tmpdir.join('synopsis.yaml'))
|
||||
with vcr.use_cassette(fname) as cass:
|
||||
urllib2.urlopen('http://www.iana.org/domains/reserved').read()
|
||||
assert cass.play_count == 0
|
||||
last_mod = os.path.getmtime(fname)
|
||||
|
||||
with vcr.use_cassette(fname) as cass:
|
||||
urllib2.urlopen('http://www.iana.org/domains/reserved').read()
|
||||
assert cass.play_count == 1
|
||||
assert cass.dirty == False
|
||||
last_mod2 = os.path.getmtime(fname)
|
||||
|
||||
assert last_mod == last_mod2
|
||||
|
||||
def test_disk_saver_write(tmpdir):
|
||||
'''Ensure that when you close a cassette with changing it it does rewrite the file'''
|
||||
fname = str(tmpdir.join('synopsis.yaml'))
|
||||
with vcr.use_cassette(fname) as cass:
|
||||
urllib2.urlopen('http://www.iana.org/domains/reserved').read()
|
||||
assert cass.play_count == 0
|
||||
last_mod = os.path.getmtime(fname)
|
||||
|
||||
with vcr.use_cassette(fname) as cass:
|
||||
urllib2.urlopen('http://www.iana.org/domains/reserved').read()
|
||||
urllib2.urlopen('http://httpbin.org/').read()
|
||||
assert cass.play_count == 1
|
||||
assert cass.dirty
|
||||
last_mod2 = os.path.getmtime(fname)
|
||||
|
||||
assert last_mod != last_mod2
|
||||
|
||||
Reference in New Issue
Block a user