def _set_up_recorder(session, request, cassette_name): recorder = Betamax(session) recorder.use_cassette(cassette_name) recorder.start() request.addfinalizer(recorder.stop) return recorder
class TestBetamax(TestCase): @property def cassette_name(self): cls = getattr(self, '__class__') test = self._testMethodName return '{0}.{1}'.format(cls.__name__, test) def setUp(self): # use self.env.set('var', 'value') and with self.env: ... to use custom envvars self.env = EnvironmentVarGuard() self.client = Client(url=TEST_URL) if TEST_TOKEN: self.client.login(token=TEST_TOKEN) self.recorder = Betamax(session=self.client.session) self.recorder.use_cassette(self.cassette_name) self.recorder.start() self.project = self.client.scope(TEST_SCOPE_NAME) def tearDown(self): self.recorder.stop() def assertRaisesRegex(self, expected_exception, expected_regex, *args, **kwargs): if six.PY2: return self.assertRaisesRegexp(expected_exception, expected_regex, *args, **kwargs) else: return super(__class__, self).assertRaisesRegex(expected_exception, expected_regex, *args, **kwargs)
def tl_searcher(request): tl_searcher = Tracker() session = tl_searcher.session betamax = Betamax(session, cassette_library_dir=config.cassette_library_dir) betamax.use_cassette(request.function.__name__) betamax.start() request.addfinalizer(betamax.stop) return tl_searcher
def wrap_google_with_betamax(): recorder = Betamax(app.config['user_oauth']) # add record='all' to record new session recorder.use_cassette("client_authorized_fail") recorder.start() @app.after_request def unwrap(response): recorder.stop() return response
def helium_recorder(request): """Generate and start a recorder using a helium.Client.""" cassette_name = '' if request.module is not None: cassette_name += request.module.__name__ + '.' if request.cls is not None: cassette_name += request.cls.__name__ + '.' cassette_name += request.function.__name__ session = helium_commander.Client(base_url=API_URL) session.token_auth(API_TOKEN) recorder = Betamax(session) recorder.use_cassette(cassette_name) recorder.start() request.addfinalizer(recorder.stop) return recorder
def wrap_flask_dance_with_betamax(): for session, cassette_name in betamax_setup_info: recorder = Betamax(session).use_cassette(cassette_name) recorders.append(recorder) recorder.start()