mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-20 22:40:31 -04:00
Add radio buttons for choosing the API key type
Best-guess wording for what the labels and question should be. Adds a macro for rendering radio buttons from a WTForms field.
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import pytest
|
||||
|
||||
from werkzeug.datastructures import MultiDict
|
||||
|
||||
from app.main.forms import CreateKeyForm
|
||||
@@ -11,4 +13,20 @@ def test_return_validation_error_when_key_name_exists(app_):
|
||||
form = CreateKeyForm(_get_names(),
|
||||
formdata=MultiDict([('key_name', 'Some key')]))
|
||||
form.validate()
|
||||
assert {'key_name': ['A key with this name already exists']} == form.errors
|
||||
assert form.errors['key_name'] == ['A key with this name already exists']
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
'key_type, expected_error', [
|
||||
('', 'This field is required.'),
|
||||
('invalid', 'Not a valid choice')
|
||||
]
|
||||
)
|
||||
def test_return_validation_error_when_key_type_not_chosen(app_, key_type, expected_error):
|
||||
|
||||
with app_.test_request_context():
|
||||
form = CreateKeyForm(
|
||||
[],
|
||||
formdata=MultiDict([('key_name', 'Some key'), ('key_type', key_type)]))
|
||||
form.validate()
|
||||
assert form.errors['key_type'] == [expected_error]
|
||||
|
||||
@@ -72,8 +72,13 @@ def test_should_create_api_key_with_type_normal(app_,
|
||||
|
||||
with app_.test_request_context(), app_.test_client() as client:
|
||||
client.login(api_user_active)
|
||||
response = client.post(url_for('main.create_api_key', service_id=service_id),
|
||||
data={'key_name': 'some default key name'})
|
||||
response = client.post(
|
||||
url_for('main.create_api_key', service_id=service_id),
|
||||
data={
|
||||
'key_name': 'some default key name',
|
||||
'key_type': 'normal'
|
||||
}
|
||||
)
|
||||
|
||||
assert response.status_code == 200
|
||||
assert 'some default key name' in response.get_data(as_text=True)
|
||||
|
||||
Reference in New Issue
Block a user