Ejemplo n.º 1
0
 def test_set_data_on_form(self):
     form = LoginForm('test')
     post_data = {'username': '******', 'password': '******', 'first_name': None, 'last_name': None, 'email': None}
     form.data = post_data
     assert form.data == post_data
     request = Request('GET', post={'first_name': 'data'}, files={'file': 'something'})
     form.data = request
     assert form.data['first_name'] == 'data'
Ejemplo n.º 2
0
 def test_setting_raw_data(self):
     form = LoginForm('test')
     data = {'username': '******'}
     expected_data = {'first_name': None, 'last_name': None, 'password': None, 'username': '******', 'email': None}
     form.data = data
     assert form.username.value == 'simon'
     assert form.data == expected_data
     assert form.raw_data == expected_data
Ejemplo n.º 3
0
 def test_bind_object_to_form_without_mapping(self):
     form = LoginForm('test')
     user = User(username='******', password='******')
     form.bind(user)
     assert form.username.value == 'simon'
     assert form.password.value == 'test'
     form.data = {'password': '******'}
     assert form.password.value == 'newpass'
Ejemplo n.º 4
0
 def test_bind_object_to_form_without_mapping(self):
     form = LoginForm('test')
     user = User(username='******', password='******')
     form.bind(user)
     assert form.username.value == 'simon'
     assert form.password.value == 'test'
     form.data = {'password': '******'}
     assert form.password.value == 'newpass'
Ejemplo n.º 5
0
 def test_filter_and_validate_input(self):
     form = LoginForm('test')
     data = {'username': '******'}
     form.data = data
     form.is_valid()
     assert form.username.value == 'simon'
     assert form.username.original_value == 'simon '
     assert form.errors == {'password': {'messages': ['Value is required'], 'label': 'password'}}
Ejemplo n.º 6
0
 def test_validate_form_invalid(self):
     form = LoginForm(validators=[SampleFormValidator()])
     form.data = {'username': '******', 'password': '******'}
     valid = form.is_valid()
     assert not valid
     assert form.errors == {
         'form': {
             'messages': ['Username does not match.'],
             'label': 'Form'
         }
     }
Ejemplo n.º 7
0
 def test_bind_object_to_form_with_mapping(self):
     form = LoginForm('test')
     user = User(username='******', password='******')
     user.personal.first_name = 'Simon'
     user.personal.contact.email = '*****@*****.**'
     form.bind(user, form_user_mapping)
     assert form.username.value == 'simon'
     assert form.first_name.value == 'Simon'
     assert form.email.value == '*****@*****.**'
     assert form.password.value == 'test'
     form.data = {'password': '******'}
     assert form.password.value == 'newpass'
Ejemplo n.º 8
0
 def test_bind_object_to_form_with_mapping(self):
     form = LoginForm('test')
     user = User(username='******', password='******')
     user.personal.first_name = 'Simon'
     user.personal.contact.email = '*****@*****.**'
     form.bind(user, form_user_mapping)
     assert form.username.value == 'simon'
     assert form.first_name.value == 'Simon'
     assert form.email.value == '*****@*****.**'
     assert form.password.value == 'test'
     form.data = {'password': '******'}
     assert form.password.value == 'newpass'
Ejemplo n.º 9
0
 def test_filter_and_validate_input(self):
     form = LoginForm('test')
     data = {'username': '******'}
     form.data = data
     form.is_valid()
     assert form.username.value == 'simon'
     assert form.username.original_value == 'simon '
     assert form.errors == {
         'password': {
             'messages': ['Value is required'],
             'label': 'password'
         }
     }
Ejemplo n.º 10
0
 def test_set_data_on_form(self):
     form = LoginForm('test')
     post_data = {
         'username': '******',
         'password': '******',
         'first_name': None,
         'last_name': None,
         'email': None}
     form.data = post_data
     assert form.data == post_data
     environ = environ_with_file()
     request = Request.from_environ(environ)
     form.data = request
     assert form.data['first_name'] == '1234'
Ejemplo n.º 11
0
 def test_setting_raw_data(self):
     form = LoginForm('test')
     data = {'username': '******'}
     expected_data = {
         'first_name': None,
         'last_name': None,
         'password': None,
         'username': '******',
         'email': None
     }
     form.data = data
     assert form.username.value == 'simon'
     assert form.data == expected_data
     assert form.raw_data == expected_data
Ejemplo n.º 12
0
 def test_set_data_on_form(self):
     form = LoginForm('test')
     post_data = {
         'username': '******',
         'password': '******',
         'first_name': None,
         'last_name': None,
         'email': None
     }
     form.data = post_data
     assert form.data == post_data
     request = Request('GET',
                       post={'first_name': 'data'},
                       files={'file': 'something'})
     form.data = request
     assert form.data['first_name'] == 'data'
Ejemplo n.º 13
0
 def test_form_create(self):
     form = Form('test')
     assert len(form) == 0
     assert len(form.fields) == 0
     assert repr(
         form
     ) == '<watson.form.forms.Form name:test method:post action:/ fields:0>'
     form2 = LoginForm('test')
     assert len(form2) == 5
Ejemplo n.º 14
0
 def test_hydrate_form_to_object_without_mapping(self):
     form = LoginForm('test')
     form.data = {'username': '******', 'password': '******'}
     user = User()
     form.bind(user, hydrate=False)
     form.is_valid()
     assert user.username == 'simon'
     assert user.password == 'test'
Ejemplo n.º 15
0
 def test_hydrate_form_to_object_with_mapping_invalid_class(self):
     with raises(AttributeError):
         form = LoginForm('test')
         form.data = {'username': '******', 'password': '******'}
         user = Contact()  # obviously not a user
         form.bind(user, {'username': ('firstname', 'test')}, hydrate=False)
         form.is_valid()
Ejemplo n.º 16
0
 def test_hydrate_form_to_object_without_mapping(self):
     form = LoginForm('test')
     form.data = {'username': '******', 'password': '******'}
     user = User()
     form.bind(user, hydrate=False)
     form.is_valid()
     assert user.username == 'simon'
     assert user.password == 'test'
Ejemplo n.º 17
0
 def test_ignored_fields(self):
     form = LoginForm('test')
     user = User()
     form.bind(user, ignored_fields=('username',))
     form.data = {'username': '******', 'password': '******'}
     form.is_valid()
     assert not form.username.value
     assert form.password.value
Ejemplo n.º 18
0
 def test_hydrate_form_to_object_with_mapping(self):
     form = LoginForm('test')
     form.data = {'username': '******', 'password': '******', 'email': '*****@*****.**'}
     user = User()
     form.bind(user, form_user_mapping, hydrate=False)
     form.is_valid()
     assert user.username == 'simon'
     assert user.password == 'test'
     assert user.personal.contact.email == '*****@*****.**'
Ejemplo n.º 19
0
 def test_hydrate_form_to_object_with_mapping(self):
     form = LoginForm('test')
     form.data = {
         'username': '******',
         'password': '******',
         'email': '*****@*****.**'
     }
     user = User()
     form.bind(user, form_user_mapping, hydrate=False)
     form.is_valid()
     assert user.username == 'simon'
     assert user.password == 'test'
     assert user.personal.contact.email == '*****@*****.**'
Ejemplo n.º 20
0
 def test_field_access(self):
     form = LoginForm()
     form.open()
     assert not isinstance(form.username, str)
     form.close()
     assert not form.username
Ejemplo n.º 21
0
 def test_form_create_no_name(self):
     form = Form()
     assert form.name == 'Form'
     login_form = LoginForm()
     assert login_form.name == 'LoginForm'
Ejemplo n.º 22
0
 def test_custom_method(self):
     form = LoginForm('test', method='PUT')
     assert form.http_request_method.value == 'PUT'
     assert form.close(
     ) == '<input name="HTTP_REQUEST_METHOD" type="hidden" value="PUT" /></form>'
Ejemplo n.º 23
0
 def test_render_entire_form(self):
     form = LoginForm('test')
     rendered_form = str(form)
     assert rendered_form == '<form action="/" enctype="application/x-www-form-urlencoded" method="post" name="test"><div><label for="username">username</label><input id="username" name="username" required="required" type="text" /></div><div><label for="password">password</label><input id="password" name="password" required="required" type="password" /></div><div><label for="first_name">first_name</label><input id="first_name" name="first_name" type="text" /></div><div><label for="last_name">last_name</label><input id="last_name" name="last_name" type="text" /></div><div><label for="email">email</label><input id="email" name="email" type="text" /></div></form>'
Ejemplo n.º 24
0
 def test_hydrate_object_with_mapping_invalid_class(self):
     with raises(AttributeError):
         form = LoginForm('test')
         user = Other()
         user.test = 'test'
         form.bind(user, {'username': ('blah', 'field')})
Ejemplo n.º 25
0
 def test_validate_form_success(self):
     form = LoginForm(validators=[SampleFormValidator()])
     form.data = {'username': '******', 'password': '******'}
     valid = form.is_valid()
     assert valid
Ejemplo n.º 26
0
 def test_validate_form_success(self):
     form = LoginForm(validators=[SampleFormValidator()])
     form.data = {'username': '******', 'password': '******'}
     valid = form.is_valid()
     assert valid
Ejemplo n.º 27
0
 def test_validate_form_invalid(self):
     form = LoginForm(validators=[SampleFormValidator()])
     form.data = {'username': '******', 'password': '******'}
     valid = form.is_valid()
     assert not valid
     assert form.errors == {'form': {'messages': ['Username does not match.'], 'label': 'Form'}}
Ejemplo n.º 28
0
 def test_custom_method(self):
     form = LoginForm('test', method='PUT')
     assert form.http_request_method.value == 'PUT'
     assert form.close(
     ) == '<input name="HTTP_REQUEST_METHOD" type="hidden" value="PUT" /></form>'
Ejemplo n.º 29
0
 def test_hydrate_form_to_object_with_mapping_invalid_class(self):
     form = LoginForm('test')
     form.data = {'username': '******', 'password': '******'}
     user = Contact()  # obviously not a user
     form.bind(user, {'username': ('firstname', 'test')}, hydrate=False)
     form.is_valid()
Ejemplo n.º 30
0
 def test_hydrate_object_with_mapping_invalid_class(self):
     form = LoginForm('test')
     user = Other()
     user.test = 'test'
     form.bind(user, {'username': ('blah', 'field')})