Skip to content

Commit 7c76758

Browse files
committed
tests: use pytest style assertions
1 parent 40daedb commit 7c76758

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+2438
-2627
lines changed

tests/clients/test_django/test_oauth_client.py

+38-34
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from unittest import mock
22

3+
import pytest
34
from django.test import override_settings
45

56
from authlib.common.urls import url_decode
@@ -19,7 +20,8 @@
1920
class DjangoOAuthTest(TestCase):
2021
def test_register_remote_app(self):
2122
oauth = OAuth()
22-
self.assertRaises(AttributeError, lambda: oauth.dev)
23+
with pytest.raises(AttributeError):
24+
oauth.dev # noqa:B018
2325

2426
oauth.register(
2527
"dev",
@@ -30,8 +32,8 @@ def test_register_remote_app(self):
3032
access_token_url="https://i.b/token",
3133
authorize_url="https://i.b/authorize",
3234
)
33-
self.assertEqual(oauth.dev.name, "dev")
34-
self.assertEqual(oauth.dev.client_id, "dev")
35+
assert oauth.dev.name == "dev"
36+
assert oauth.dev.client_id == "dev"
3537

3638
def test_register_with_overwrite(self):
3739
oauth = OAuth()
@@ -46,15 +48,15 @@ def test_register_with_overwrite(self):
4648
access_token_params={"foo": "foo"},
4749
authorize_url="https://i.b/authorize",
4850
)
49-
self.assertEqual(oauth.dev_overwrite.client_id, "dev-client-id")
50-
self.assertEqual(oauth.dev_overwrite.access_token_params["foo"], "foo-1")
51+
assert oauth.dev_overwrite.client_id == "dev-client-id"
52+
assert oauth.dev_overwrite.access_token_params["foo"] == "foo-1"
5153

5254
@override_settings(AUTHLIB_OAUTH_CLIENTS={"dev": dev_client})
5355
def test_register_from_settings(self):
5456
oauth = OAuth()
5557
oauth.register("dev")
56-
self.assertEqual(oauth.dev.client_id, "dev-key")
57-
self.assertEqual(oauth.dev.client_secret, "dev-secret")
58+
assert oauth.dev.client_id == "dev-key"
59+
assert oauth.dev.client_secret == "dev-secret"
5860

5961
def test_oauth1_authorize(self):
6062
request = self.factory.get("/login")
@@ -75,16 +77,16 @@ def test_oauth1_authorize(self):
7577
send.return_value = mock_send_value("oauth_token=foo&oauth_verifier=baz")
7678

7779
resp = client.authorize_redirect(request)
78-
self.assertEqual(resp.status_code, 302)
80+
assert resp.status_code == 302
7981
url = resp.get("Location")
80-
self.assertIn("oauth_token=foo", url)
82+
assert "oauth_token=foo" in url
8183

8284
request2 = self.factory.get(url)
8385
request2.session = request.session
8486
with mock.patch("requests.sessions.Session.send") as send:
8587
send.return_value = mock_send_value("oauth_token=a&oauth_token_secret=b")
8688
token = client.authorize_access_token(request2)
87-
self.assertEqual(token["oauth_token"], "a")
89+
assert token["oauth_token"] == "a"
8890

8991
def test_oauth2_authorize(self):
9092
request = self.factory.get("/login")
@@ -100,9 +102,9 @@ def test_oauth2_authorize(self):
100102
authorize_url="https://i.b/authorize",
101103
)
102104
rv = client.authorize_redirect(request, "https://a.b/c")
103-
self.assertEqual(rv.status_code, 302)
105+
assert rv.status_code == 302
104106
url = rv.get("Location")
105-
self.assertIn("state=", url)
107+
assert "state=" in url
106108
state = dict(url_decode(urlparse.urlparse(url).query))["state"]
107109

108110
with mock.patch("requests.sessions.Session.send") as send:
@@ -111,7 +113,7 @@ def test_oauth2_authorize(self):
111113
request2.session = request.session
112114

113115
token = client.authorize_access_token(request2)
114-
self.assertEqual(token["access_token"], "a")
116+
assert token["access_token"] == "a"
115117

116118
def test_oauth2_authorize_access_denied(self):
117119
oauth = OAuth()
@@ -129,7 +131,8 @@ def test_oauth2_authorize_access_denied(self):
129131
"/?error=access_denied&error_description=Not+Allowed"
130132
)
131133
request.session = self.factory.session
132-
self.assertRaises(OAuthError, client.authorize_access_token, request)
134+
with pytest.raises(OAuthError):
135+
client.authorize_access_token(request)
133136

134137
def test_oauth2_authorize_code_challenge(self):
135138
request = self.factory.get("/login")
@@ -145,24 +148,24 @@ def test_oauth2_authorize_code_challenge(self):
145148
client_kwargs={"code_challenge_method": "S256"},
146149
)
147150
rv = client.authorize_redirect(request, "https://a.b/c")
148-
self.assertEqual(rv.status_code, 302)
151+
assert rv.status_code == 302
149152
url = rv.get("Location")
150-
self.assertIn("state=", url)
151-
self.assertIn("code_challenge=", url)
153+
assert "state=" in url
154+
assert "code_challenge=" in url
152155

153156
state = dict(url_decode(urlparse.urlparse(url).query))["state"]
154157
state_data = request.session[f"_state_dev_{state}"]["data"]
155158
verifier = state_data["code_verifier"]
156159

157160
def fake_send(sess, req, **kwargs):
158-
self.assertIn(f"code_verifier={verifier}", req.body)
161+
assert f"code_verifier={verifier}" in req.body
159162
return mock_send_value(get_bearer_token())
160163

161164
with mock.patch("requests.sessions.Session.send", fake_send):
162165
request2 = self.factory.get(f"/authorize?state={state}")
163166
request2.session = request.session
164167
token = client.authorize_access_token(request2)
165-
self.assertEqual(token["access_token"], "a")
168+
assert token["access_token"] == "a"
166169

167170
def test_oauth2_authorize_code_verifier(self):
168171
request = self.factory.get("/login")
@@ -182,10 +185,10 @@ def test_oauth2_authorize_code_verifier(self):
182185
rv = client.authorize_redirect(
183186
request, "https://a.b/c", state=state, code_verifier=code_verifier
184187
)
185-
self.assertEqual(rv.status_code, 302)
188+
assert rv.status_code == 302
186189
url = rv.get("Location")
187-
self.assertIn("state=", url)
188-
self.assertIn("code_challenge=", url)
190+
assert "state=" in url
191+
assert "code_challenge=" in url
189192

190193
with mock.patch("requests.sessions.Session.send") as send:
191194
send.return_value = mock_send_value(get_bearer_token())
@@ -194,7 +197,7 @@ def test_oauth2_authorize_code_verifier(self):
194197
request2.session = request.session
195198

196199
token = client.authorize_access_token(request2)
197-
self.assertEqual(token["access_token"], "a")
200+
assert token["access_token"] == "a"
198201

199202
def test_openid_authorize(self):
200203
request = self.factory.get("/login")
@@ -213,9 +216,9 @@ def test_openid_authorize(self):
213216
)
214217

215218
resp = client.authorize_redirect(request, "https://b.com/bar")
216-
self.assertEqual(resp.status_code, 302)
219+
assert resp.status_code == 302
217220
url = resp.get("Location")
218-
self.assertIn("nonce=", url)
221+
assert "nonce=" in url
219222
query_data = dict(url_decode(urlparse.urlparse(url).query))
220223

221224
token = get_bearer_token()
@@ -237,9 +240,9 @@ def test_openid_authorize(self):
237240
request2.session = request.session
238241

239242
token = client.authorize_access_token(request2)
240-
self.assertEqual(token["access_token"], "a")
241-
self.assertIn("userinfo", token)
242-
self.assertEqual(token["userinfo"]["sub"], "123")
243+
assert token["access_token"] == "a"
244+
assert "userinfo" in token
245+
assert token["userinfo"]["sub"] == "123"
243246

244247
def test_oauth2_access_token_with_post(self):
245248
oauth = OAuth()
@@ -259,7 +262,7 @@ def test_oauth2_access_token_with_post(self):
259262
request.session = self.factory.session
260263
request.session["_state_dev_b"] = {"data": {}}
261264
token = client.authorize_access_token(request)
262-
self.assertEqual(token["access_token"], "a")
265+
assert token["access_token"] == "a"
263266

264267
def test_with_fetch_token_in_oauth(self):
265268
def fetch_token(name, request):
@@ -276,7 +279,7 @@ def fetch_token(name, request):
276279
)
277280

278281
def fake_send(sess, req, **kwargs):
279-
self.assertEqual(sess.token["access_token"], "dev")
282+
assert sess.token["access_token"] == "dev"
280283
return mock_send_value(get_bearer_token())
281284

282285
with mock.patch("requests.sessions.Session.send", fake_send):
@@ -299,7 +302,7 @@ def fetch_token(request):
299302
)
300303

301304
def fake_send(sess, req, **kwargs):
302-
self.assertEqual(sess.token["access_token"], "dev")
305+
assert sess.token["access_token"] == "dev"
303306
return mock_send_value(get_bearer_token())
304307

305308
with mock.patch("requests.sessions.Session.send", fake_send):
@@ -319,13 +322,14 @@ def test_request_without_token(self):
319322

320323
def fake_send(sess, req, **kwargs):
321324
auth = req.headers.get("Authorization")
322-
self.assertIsNone(auth)
325+
assert auth is None
323326
resp = mock.MagicMock()
324327
resp.text = "hi"
325328
resp.status_code = 200
326329
return resp
327330

328331
with mock.patch("requests.sessions.Session.send", fake_send):
329332
resp = client.get("/api/user", withhold_token=True)
330-
self.assertEqual(resp.text, "hi")
331-
self.assertRaises(OAuthError, client.get, "https://i.b/api/user")
333+
assert resp.text == "hi"
334+
with pytest.raises(OAuthError):
335+
client.get("https://i.b/api/user")

0 commit comments

Comments
 (0)