Skip to content

Commit bd69465

Browse files
Add test for optional field throwing an error
1 parent 25cbdf2 commit bd69465

File tree

3 files changed

+37
-0
lines changed

3 files changed

+37
-0
lines changed
20.5 KB
Binary file not shown.
Binary file not shown.

tests/emailpassword/test_signin.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -767,4 +767,41 @@ async def test_too_many_fields(driver_config_client: TestClient):
767767
assert dict_response["message"] == "Are you sending too many formFields?"
768768

769769

770+
@mark.asyncio
771+
async def test_non_optional_custom_field_without_input(
772+
driver_config_client: TestClient,
773+
):
774+
init(
775+
supertokens_config=SupertokensConfig("http://localhost:3567"),
776+
app_info=InputAppInfo(
777+
app_name="SuperTokens Demo",
778+
api_domain="http://api.supertokens.io",
779+
website_domain="http://supertokens.io",
780+
api_base_path="/auth",
781+
),
782+
framework="fastapi",
783+
recipe_list=[
784+
emailpassword.init(
785+
sign_up_feature=emailpassword.InputSignUpFeature(
786+
form_fields=[
787+
emailpassword.InputFormField("test_field", optional=False)
788+
]
789+
)
790+
),
791+
session.init(get_token_transfer_method=lambda _, __, ___: "cookie"),
792+
],
793+
)
794+
start_st()
795+
796+
response_1 = sign_up_request(
797+
driver_config_client, "[email protected]", "validpassword123"
798+
)
799+
assert response_1.status_code == 200
800+
dict_response = json.loads(response_1.text)
801+
assert dict_response["status"] == "FIELD_ERROR"
802+
assert len(dict_response["formFields"]) == 1
803+
assert dict_response["formFields"][0]["error"] == "Field is not optional"
804+
assert dict_response["formFields"][0]["id"] == "test_field"
805+
806+
770807
# TODO add few more tests

0 commit comments

Comments
 (0)