def test_get_all(self): from pyramid_signup.models import UserGroup from pyramid_signup.models import User from pyramid_signup.managers import UserGroupManager user = User(username='******', password='******') self.session.add(user) group = UserGroup('admin', 'group for admins') group.users.append(user) self.session.add(group) self.session.commit() request = testing.DummyRequest() mgr = UserGroupManager(request) groups = mgr.get_all() assert len(groups) == 1
def choices_widget(node, kw): request = kw.get('request') if request.context: is_admin = has_permission('group:admin', request.context, request) mgr = UserGroupManager(request) groups = mgr.get_all() if is_admin: choices = [ ('', '- None -'), ] for group in groups: choices.append((str(group.pk), group.name)) return deform.widget.SelectWidget(values=choices) return deform.widget.HiddenWidget()