def test_password_required(identity_provider_class, password_set, password_required, ok): app = ServerApp() idp = identity_provider_class( parent=app, hashed_password="******" if password_set else "", password_required=password_required, ) app.identity_provider = idp if ok: ctx = nullcontext() else: ctx = pytest.raises(SystemExit) with ctx: idp.validate_security(app, ssl_options=None)
def test_validate_security( identity_provider_class, ip, token, ssl, warns, caplog, ): app = ServerApp(ip=ip, log=logging.getLogger()) idp = identity_provider_class(parent=app, token=token) app.identity_provider = idp with caplog.at_level(logging.WARNING): idp.validate_security(app, ssl_options=ssl) for record in caplog.records: print(record) if warns: assert len(caplog.records) > 0 if isinstance(warns, str): logged = "\n".join(record.msg for record in caplog.records) assert warns in logged else: assert len(caplog.records) == 0