Adds UI tests for the invalid cases.
This commit is contained in:
parent
b06073d86d
commit
46347d1bcc
|
@ -4,7 +4,7 @@ from unittest import mock
|
||||||
from subiquitycore.testing import view_helpers
|
from subiquitycore.testing import view_helpers
|
||||||
|
|
||||||
from subiquity.client.controllers.identity import IdentityController
|
from subiquity.client.controllers.identity import IdentityController
|
||||||
from subiquity.common.types import IdentityData
|
from subiquity.common.types import IdentityData, UsernameValidation
|
||||||
from subiquity.ui.views.identity import IdentityView
|
from subiquity.ui.views.identity import IdentityView
|
||||||
|
|
||||||
|
|
||||||
|
@ -16,6 +16,30 @@ valid_data = {
|
||||||
'confirm_password': 'password'
|
'confirm_password': 'password'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
too_long = {
|
||||||
|
'realname': 'Real Name',
|
||||||
|
'hostname': 'host-name',
|
||||||
|
'username': 'u'*33,
|
||||||
|
'password': 'password',
|
||||||
|
'confirm_password': 'password'
|
||||||
|
}
|
||||||
|
|
||||||
|
already_taken = {
|
||||||
|
'realname': 'Real Name',
|
||||||
|
'hostname': 'host-name',
|
||||||
|
'username': 'root',
|
||||||
|
'password': 'password',
|
||||||
|
'confirm_password': 'password'
|
||||||
|
}
|
||||||
|
|
||||||
|
system_reserved = {
|
||||||
|
'realname': 'Real Name',
|
||||||
|
'hostname': 'host-name',
|
||||||
|
'username': 'plugdev',
|
||||||
|
'password': 'password',
|
||||||
|
'confirm_password': 'password'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class IdentityViewTests(unittest.TestCase):
|
class IdentityViewTests(unittest.TestCase):
|
||||||
|
|
||||||
|
@ -41,6 +65,25 @@ class IdentityViewTests(unittest.TestCase):
|
||||||
view_helpers.enter_data(view.form, valid_data)
|
view_helpers.enter_data(view.form, valid_data)
|
||||||
self.assertTrue(view.form.done_btn.enabled)
|
self.assertTrue(view.form.done_btn.enabled)
|
||||||
|
|
||||||
|
def test_username_validation_system_reserved(self):
|
||||||
|
view = self.make_view()
|
||||||
|
view.controller.username_validation = \
|
||||||
|
UsernameValidation.SYSTEM_RESERVED
|
||||||
|
view_helpers.enter_data(view.form, system_reserved)
|
||||||
|
self.assertFalse(view.form.done_btn.enabled)
|
||||||
|
|
||||||
|
def test_username_validation_in_use(self):
|
||||||
|
view = self.make_view()
|
||||||
|
view.controller.username_validation = UsernameValidation.ALREADY_IN_USE
|
||||||
|
view_helpers.enter_data(view.form, already_taken)
|
||||||
|
self.assertFalse(view.form.done_btn.enabled)
|
||||||
|
|
||||||
|
def test_username_validation_too_long(self):
|
||||||
|
view = self.make_view()
|
||||||
|
view.controller.username_validation = UsernameValidation.TOO_LONG
|
||||||
|
view_helpers.enter_data(view.form, too_long)
|
||||||
|
self.assertFalse(view.form.done_btn.enabled)
|
||||||
|
|
||||||
def test_click_done(self):
|
def test_click_done(self):
|
||||||
view = self.make_view()
|
view = self.make_view()
|
||||||
CRYPTED = '<crypted>'
|
CRYPTED = '<crypted>'
|
||||||
|
|
Loading…
Reference in New Issue