예제 #1
0
    def test_expires_in_defaults_to_None(self, db_session, init_kwargs):
        token = OAuth2Token(**init_kwargs)
        db_session.add(token)

        db_session.flush()

        assert token.expires_in is None
예제 #2
0
    def test_setting_consumer_key_sets_application_instance(
            self, application_instance, db_session, init_kwargs):
        token = OAuth2Token(**init_kwargs)
        db_session.add(token)
        db_session.flush()

        assert token.application_instance == application_instance
예제 #3
0
    def test_received_at_defaults_to_now(self, db_session, init_kwargs):
        token = OAuth2Token(**init_kwargs)
        db_session.add(token)

        db_session.flush()

        assert isinstance(token.received_at, datetime.datetime)
예제 #4
0
    def test_setting_application_instance_sets_consumer_key(
            self, application_instance, db_session, init_kwargs):
        del init_kwargs["consumer_key"]
        init_kwargs["application_instance"] = application_instance
        token = OAuth2Token(**init_kwargs)
        db_session.add(token)
        db_session.flush()

        assert token.consumer_key == application_instance.consumer_key
예제 #5
0
    def test_access_token_cant_be_None(self, db_session, init_kwargs):
        del init_kwargs["access_token"]
        db_session.add(OAuth2Token(**init_kwargs))

        with pytest.raises(
                sqlalchemy.exc.IntegrityError,
                match=
                'null value in column "access_token" violates not-null constraint',
        ):
            db_session.flush()
예제 #6
0
    def test_persist_and_retrieve_all_attrs(self, application_instance,
                                            db_session):
        now = datetime.datetime.utcnow()

        db_session.add(
            OAuth2Token(
                user_id="test_user_id",
                consumer_key=application_instance.consumer_key,
                access_token="test_access_token",
                refresh_token="test_refresh_token",
                expires_in=3600,
                received_at=now,
            ))

        token = db_session.query(OAuth2Token).one()
        assert token.user_id == "test_user_id"
        assert token.consumer_key == "test_consumer_key"
        assert token.consumer_key == application_instance.consumer_key
        assert token.application_instance == application_instance
        assert token.access_token == "test_access_token"
        assert token.refresh_token == "test_refresh_token"
        assert token.expires_in == 3600
        assert token.received_at == now
예제 #7
0
def access_token(db_session, access_token_fields):
    access_token = OAuth2Token(**access_token_fields)
    db_session.add(access_token)
    return access_token
예제 #8
0
 def access_token_no_refresh(self, db_session, access_token_fields):
     access_token = OAuth2Token(
         **dict(access_token_fields, refresh_token=None))
     db_session.add(access_token)
     return access_token