class ViewPermissionTest(ViewTest): def setUp(self): ViewTest.setUp(self) self.admin_permission = Permission(permission_name="Admin") self.admin_permission.add() self.quality_permission = Permission(permission_name="quality") self.quality_permission.add()
def setUp(self): Test.setUp(self) self.admin_permission = Permission( permission_name="Admin", description="Gives acces to all aspects of the system" ) self.admin_permission.add()
def get_permission(name): permission = Permission.search(name) if not permission: permission = Permission( permission_name=name ) permission.add() return permission
def create_admin_user(): from EnGo.models.permission import Permission from EnGo.models.user import User admin_permission = Permission(permission_name="Admin") admin_permission.add() admin_user = User(username="******", password=generate_password_hash('0000')) admin_user.add() admin_user.add_permission(admin_permission)
def create_dev_user(): from EnGo.models.permission import Permission from EnGo.models.user import User dev_permission = Permission.search("Dev") if not dev_permission: dev_permission = Permission(permission_name="Dev") dev_permission.add() dev_user = User(username="******", password=generate_password_hash('0000')) dev_user.add() dev_user.add_permission(dev_permission)
class TestGetAll(PermissionTest): def setUp(self): PermissionTest.setUp(self) self.quality_permission = Permission(permission_name="quality") self.quality_permission.add() def test_should_return_list_of_all_users(self): permissions = Permission.get_all() self.assertEqual(permissions, [self.admin_permission, self.quality_permission])
def test_should_return_error_given_repeated_values(self): permission = Permission( permission_name="Admin", ) error = permission.validation.validate_unique_values() self.assertNotEqual(error, None)
def test_should_return_error_given_invalid_name(self): permission = Permission( permission_name="production2", ) error = permission.validation.validate_name() self.assertNotEqual(error, None)
def test_should_not_return_error_given_unique_values(self): permission = Permission( permission_name="production", ) error = permission.validation.validate_unique_values() self.assertEqual(error, None)
def test_should_return_error_given_empty_values(self): permission = Permission( permission_name="", ) error = permission.validation.validate_empty_values() self.assertNotEqual(error, None)
def setUp(self): UserTest.setUp(self) self.admin_permission = Permission(permission_name="Admin") self.admin_permission.add() self.admin_view = View(view_name="Admin View") self.admin_view.add() self.admin_view.add_permission(self.admin_permission) self.admin_user = User(username="******", password="******") self.admin_user.add() self.admin_user.add_permission(self.admin_permission) self.quality_permission = Permission(permission_name="quality") self.quality_permission.add() self.quality_view = View(view_name="Quality View") self.quality_view.add() self.quality_view.add_permission(self.quality_permission) self.normal_user = User(username="******", password="******") self.normal_user.add()
def get_checked_permissions(): permissions = Permission.get_all() checked_permissions = [] for permission in permissions: try: permission_id = request.form[permission.permission_name] checked_permissions.append(permission) except KeyError: pass return checked_permissions
def test_should_return_none_given_invalid_name(self): permission = Permission.search("Non existent permission_name") self.assertEqual(permission, None)
def test_should_return_permission_given_valid_name(self): permission = Permission.search("Admin") self.assertEqual(permission, self.admin_permission)
def test_should_add_permission(self): permission = Permission(permission_name="Some Permission") permission.add() self.assertIn(permission, self.db.session)
def test_should_return_list_of_all_users(self): permissions = Permission.get_all() self.assertEqual(permissions, [self.admin_permission, self.quality_permission])
def setUp(self): PermissionTest.setUp(self) self.quality_permission = Permission(permission_name="quality") self.quality_permission.add()
def test_should_return_none_given_invalid_id(self): permission = Permission.get(2) self.assertEqual(permission, None)
def test_should_return_permission_given_valid_id(self): permission = Permission.get(1) self.assertEqual(permission, self.admin_permission)
def inject_view_and_permissions(): return dict( view=View.search(request.endpoint), permissions=Permission.get_all() )