diff --git a/tests/unit/test_vcr.py b/tests/unit/test_vcr.py index a4c98be..1029de6 100644 --- a/tests/unit/test_vcr.py +++ b/tests/unit/test_vcr.py @@ -15,9 +15,11 @@ def test_vcr_use_cassette(): 'vcr.cassette.Cassette.load', return_value=mock.MagicMock(inject=False) ) as mock_cassette_load: + @test_vcr.use_cassette('test') def function(): pass + assert mock_cassette_load.call_count == 0 function() assert mock_cassette_load.call_args[1]['record_mode'] is record_mode @@ -38,9 +40,11 @@ def test_vcr_use_cassette(): def test_vcr_before_record_request_params(): base_path = 'http://httpbin.org/' + def before_record_cb(request): if request.path != '/get': return request + test_vcr = VCR(filter_headers=('cookie',), before_record_request=before_record_cb, ignore_hosts=('www.test.com',), ignore_localhost=True, filter_query_parameters=('foo',)) @@ -53,8 +57,12 @@ def test_vcr_before_record_request_params(): assert cassette.filter_request( Request('GET', base_path + '?foo=bar', '', {'cookie': 'test', 'other': 'fun'})).headers == {'other': 'fun'} - assert cassette.filter_request(Request('GET', base_path + '?foo=bar', '', - {'cookie': 'test', 'other': 'fun'})).headers == {'other': 'fun'} + assert cassette.filter_request( + Request( + 'GET', base_path + '?foo=bar', '', + {'cookie': 'test', 'other': 'fun'} + ) + ).headers == {'other': 'fun'} assert cassette.filter_request(Request('GET', 'http://www.test.com' + '?foo=bar', '', {'cookie': 'test', 'other': 'fun'})) is None @@ -103,6 +111,7 @@ def test_custom_patchers(): def test_inject_cassette(): vcr = VCR(inject_cassette=True) + @vcr.use_cassette('test', record_mode='once') def with_cassette_injected(cassette): assert cassette.record_mode == 'once' @@ -117,9 +126,11 @@ def test_inject_cassette(): def test_with_current_defaults(): vcr = VCR(inject_cassette=True, record_mode='once') + @vcr.use_cassette('test', with_current_defaults=False) def changing_defaults(cassette, checks): checks(cassette) + @vcr.use_cassette('test', with_current_defaults=True) def current_defaults(cassette, checks): checks(cassette) @@ -141,27 +152,33 @@ def test_with_current_defaults(): def test_cassette_library_dir_with_decoration_and_no_explicit_path(): library_dir = '/libary_dir' vcr = VCR(inject_cassette=True, cassette_library_dir=library_dir) + @vcr.use_cassette() def function_name(cassette): assert cassette._path == os.path.join(library_dir, 'function_name') + function_name() def test_cassette_library_dir_with_decoration_and_explicit_path(): library_dir = '/libary_dir' vcr = VCR(inject_cassette=True, cassette_library_dir=library_dir) + @vcr.use_cassette(path='custom_name') def function_name(cassette): assert cassette._path == os.path.join(library_dir, 'custom_name') + function_name() def test_cassette_library_dir_with_decoration_and_super_explicit_path(): library_dir = '/libary_dir' vcr = VCR(inject_cassette=True, cassette_library_dir=library_dir) + @vcr.use_cassette(path=os.path.join(library_dir, 'custom_name')) def function_name(cassette): assert cassette._path == os.path.join(library_dir, 'custom_name') + function_name() @@ -169,26 +186,32 @@ def test_cassette_library_dir_with_path_transformer(): library_dir = '/libary_dir' vcr = VCR(inject_cassette=True, cassette_library_dir=library_dir, path_transformer=lambda path: path + '.json') + @vcr.use_cassette() def function_name(cassette): assert cassette._path == os.path.join(library_dir, 'function_name.json') + function_name() def test_use_cassette_with_no_extra_invocation(): vcr = VCR(inject_cassette=True, cassette_library_dir='/') + @vcr.use_cassette def function_name(cassette): assert cassette._path == os.path.join('/', 'function_name') + function_name() def test_path_transformer(): vcr = VCR(inject_cassette=True, cassette_library_dir='/', path_transformer=lambda x: x + '_test') + @vcr.use_cassette def function_name(cassette): assert cassette._path == os.path.join('/', 'function_name_test') + function_name() @@ -203,10 +226,12 @@ def test_cassette_name_generator_defaults_to_using_module_function_defined_in(): def test_ensure_suffix(): vcr = VCR(inject_cassette=True, path_transformer=VCR.ensure_suffix('.yaml')) + @vcr.use_cassette def function_name(cassette): assert cassette._path == os.path.join(os.path.dirname(__file__), 'function_name.yaml') + function_name() @@ -217,7 +242,7 @@ def test_additional_matchers(): def function_defaults(cassette): assert set(cassette._match_on) == set([vcr.matchers['uri']]) - @vcr.use_cassette(additional_matchers=('body')) + @vcr.use_cassette(additional_matchers=('body',)) def function_additional(cassette): assert set(cassette._match_on) == set([vcr.matchers['uri'], vcr.matchers['body']])