Don’t allow commas in placeholders

> If a user tries to save a template containing something like
> ((name,date)) we should give a validation error.

This is because it causes havoc with the column headers in CSV files.

https://www.pivotaltracker.com/story/show/117043389
This commit is contained in:
Chris Hill-Scott
2016-04-07 16:02:06 +01:00
parent ab8a5c561f
commit dfd8540b54
3 changed files with 26 additions and 3 deletions

View File

@@ -1,6 +1,6 @@
import pytest
from app.main.forms import RegisterUserForm
from app.main.validators import ValidEmailDomainRegex
from app.main.validators import ValidEmailDomainRegex, NoCommasInPlaceHolders
from wtforms import ValidationError
from unittest.mock import Mock
@@ -112,3 +112,11 @@ def test_invalid_list_of_white_list_email_domains(app_, email):
email_domain_validators = ValidEmailDomainRegex()
with pytest.raises(ValidationError):
email_domain_validators(None, _gen_mock_field(email))
def test_for_commas_in_placeholders(app_):
with app_.test_request_context():
with pytest.raises(ValidationError) as error:
NoCommasInPlaceHolders()(None, _gen_mock_field('Hello ((name,date))'))
assert str(error.value) == 'You cant have commas in your fields'
NoCommasInPlaceHolders()(None, _gen_mock_field('Hello ((name))'))