Skip to content

Commit 11fca6d

Browse files
committed
test: Fix issues with tests
1 parent fa22498 commit 11fca6d

File tree

3 files changed

+45
-12
lines changed

3 files changed

+45
-12
lines changed

tests/Django/test_django.py

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,24 @@
1313
# under the License.
1414

1515
import json
16+
from datetime import datetime
1617
from inspect import isawaitable
1718
from typing import Any, Dict, Union
1819

19-
from datetime import datetime
2020
from django.http import HttpRequest, HttpResponse, JsonResponse
2121
from django.test import RequestFactory, TestCase
22+
from pytest import mark
2223
from supertokens_python import InputAppInfo, SupertokensConfig, init
2324
from supertokens_python.framework.django import middleware
2425
from supertokens_python.recipe import emailpassword, session
25-
from supertokens_python.recipe.emailpassword.interfaces import APIInterface, APIOptions
26+
from supertokens_python.recipe.emailpassword.interfaces import (APIInterface,
27+
APIOptions)
2628
from supertokens_python.recipe.session import SessionContainer
27-
from supertokens_python.recipe.session.asyncio import (
28-
create_new_session,
29-
get_session,
30-
refresh_session,
31-
)
32-
from supertokens_python.recipe.session.framework.django.asyncio import verify_session
29+
from supertokens_python.recipe.session.asyncio import (create_new_session,
30+
get_session,
31+
refresh_session)
32+
from supertokens_python.recipe.session.framework.django.asyncio import \
33+
verify_session
3334
from tests.utils import clean_st, reset, setup_st, start_st
3435

3536

@@ -389,3 +390,19 @@ async def test_optional_session(self):
389390
assert response.status_code == 200
390391
dict_response = json.loads(response.content)
391392
assert dict_response["s"] == "empty session"
393+
394+
395+
from django.http import HttpResponse
396+
from supertokens_python.framework.django.django_response import \
397+
DjangoResponse as SuperTokensDjangoWrapper
398+
399+
400+
class SupertokensResponseTest(TestCase):
401+
def test_remove_header_works(self):
402+
response = HttpResponse()
403+
st_response = SuperTokensDjangoWrapper(response)
404+
405+
st_response.set_header("foo", "bar")
406+
assert st_response.get_header("foo") == "bar"
407+
st_response.remove_header("foo")
408+
assert st_response.get_header("foo") is None

tests/Flask/test_flask.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,3 +398,15 @@ def test_optional_session(driver_config_app: Any):
398398
dict_response = json.loads(response.data)
399399
assert response.status_code == 200
400400
assert dict_response["s"] == "empty session"
401+
402+
from flask import Response
403+
from supertokens_python.framework.flask.flask_response import FlaskResponse as SupertokensFlaskWrapper
404+
405+
def test_remove_header_works():
406+
response = Response()
407+
st_response = SupertokensFlaskWrapper(response)
408+
409+
st_response.set_header("foo", "bar")
410+
assert st_response.get_header("foo") == "bar"
411+
st_response.remove_header("foo")
412+
assert st_response.get_header("foo") is None

tests/utils.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
from signal import SIGTERM
2020
from subprocess import DEVNULL, run
2121
from time import sleep
22-
from typing import Any, Dict, List, cast
22+
from typing import Any, Dict, List, cast, Optional
2323

2424
from requests.models import Response
2525
from yaml import FullLoader, dump, load
@@ -252,8 +252,8 @@ def extract_info(response: Response) -> Dict[str, Any]:
252252
"antiCsrf": response.headers.get("anti-csrf"),
253253
"accessTokenFromHeader": access_token_from_header,
254254
"refreshTokenFromHeader": refresh_token_from_header,
255-
"accessTokenFromAny": access_token_from_header or access_token,
256-
"refreshTokenFromAny": refresh_token_from_header or refresh_token,
255+
"accessTokenFromAny": access_token_from_header if access_token is None else access_token,
256+
"refreshTokenFromAny": refresh_token_from_header if refresh_token is None else refresh_token,
257257
}
258258

259259

@@ -517,10 +517,14 @@ async def __call__( # pylint: disable=invalid-overridden-method, useless-super-
517517
}
518518

519519

520-
def get_st_init_args(recipe_list: List[Any]) -> Dict[str, Any]:
520+
def get_st_init_args(recipe_list: List[Any], extra_config: Optional[Dict[str, Any]]=None) -> Dict[str, Any]:
521+
if extra_config is None:
522+
extra_config = {}
523+
521524
return {
522525
**st_init_common_args,
523526
"recipe_list": recipe_list,
527+
**extra_config
524528
}
525529

526530

0 commit comments

Comments
 (0)