Skip to content
This repository has been archived by the owner on Aug 30, 2019. It is now read-only.

Commit

Permalink
Add logged/unlogged fixtures
Browse files Browse the repository at this point in the history
  • Loading branch information
pauloromeira committed May 6, 2018
1 parent 47f1fab commit 206dbd6
Showing 1 changed file with 20 additions and 7 deletions.
27 changes: 20 additions & 7 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from betamax_serializers import pretty_json
from pathlib import Path

from onegram import Login
from onegram import Login, Unlogged
from onegram import post_info, user_info
from onegram import posts

Expand All @@ -32,11 +32,16 @@ def record_mode():
def settings(record_mode):
return {'RATE_LIMITS': None} if record_mode == 'none' else {}

@pytest.fixture(params=[True, False])
def logged(request):
return request.param


@pytest.fixture
def recorder(monkeypatch, username, password, record_mode):
def recorder(logged, monkeypatch, username, password, record_mode):
Betamax.register_serializer(pretty_json.PrettyJSONSerializer)
cassete_dir = Path('tests/cassettes/')
type = 'logged' if logged else 'unlogged'
cassete_dir = Path(f'tests/cassettes/{type}')
cassete_dir.mkdir(parents=True, exist_ok=True)

placeholders = [
Expand All @@ -57,9 +62,14 @@ def recorder(monkeypatch, username, password, record_mode):


@pytest.fixture
def session(recorder, settings):
recorder.use_cassette('fixture_session')
with Login(custom_settings=settings) as session:
def session(logged, recorder, settings):
recorder.use_cassette(f'fixture_session')
if logged:
session = Login(custom_settings=settings)
else:
session = Unlogged(custom_settings=settings)

with session:
recorder.current_cassette.eject()
yield session

Expand All @@ -74,7 +84,10 @@ def user(session, recorder, test_username):


@pytest.fixture
def self(session, recorder):
def self(logged, session, recorder):
if not logged:
return None

recorder.use_cassette('fixture_self')
try:
return user_info()
Expand Down

0 comments on commit 206dbd6

Please sign in to comment.