Пример #1
0
 def test_create(self):
     gcount = Group.select().count()
     perms = ['create_query', 'edit_query', 'view_query']
     runner = CliRunner()
     result = runner.invoke(
         create_group, ['test', '--permissions', ','.join(perms)])
     print result.output
     self.assertFalse(result.exception)
     self.assertEqual(result.exit_code, 0)
     self.assertEqual(Group.select().count(), gcount + 1)
     g = Group.select().order_by(Group.id.desc()).first()
     self.assertEqual(g.org, self.factory.org)
     self.assertEqual(g.permissions, perms)
Пример #2
0
 def test_change_permissions(self):
     g = self.factory.create_group(permissions=['list_dashboards'])
     g_id = g.id
     perms = ['create_query', 'edit_query', 'view_query']
     runner = CliRunner()
     result = runner.invoke(
         change_permissions, [str(g_id), '--permissions', ','.join(perms)])
     self.assertFalse(result.exception)
     self.assertEqual(result.exit_code, 0)
     g = Group.select().where(Group.id == g_id).first()
     self.assertEqual(g.permissions, perms)
Пример #3
0
        migrate(migrator.add_column('groups', 'type', Group.type))

        for name in ['default', 'admin']:
            group = Group.get(Group.name == name)
            group.type = Group.BUILTIN_GROUP
            group.save()

        # Create association table between data sources and groups
        DataSourceGroup.create_table()

        # add default to existing data source:
        default_org = Organization.get_by_id(1)
        default_group = Group.get(Group.name == "default")
        for ds in DataSource.all(default_org):
            DataSourceGroup.create(data_source=ds, group=default_group)

        # change the groups list on a user object to be an ids list
        migrate(migrator.rename_column('users', 'groups', 'old_groups'), )

        migrate(migrator.add_column('users', 'groups', User.groups))

        group_map = dict(map(lambda g: (g.name, g.id), Group.select()))
        user_map = defaultdict(list)
        for user in User.select(User, peewee.SQL('old_groups')):
            group_ids = [group_map[group] for group in user.old_groups]
            user.update_instance(groups=group_ids)

        migrate(migrator.drop_column('users', 'old_groups'))

    db.close_db(None)
Пример #4
0
            group = Group.get(Group.name==name)
            group.type = Group.BUILTIN_GROUP
            group.save()

        # Create association table between data sources and groups
        DataSourceGroup.create_table()

        # add default to existing data source:
        default_org = Organization.get_by_id(1)
        default_group = Group.get(Group.name=="default")
        for ds in DataSource.all(default_org):
            DataSourceGroup.create(data_source=ds, group=default_group)

        # change the groups list on a user object to be an ids list
        migrate(
            migrator.rename_column('users', 'groups', 'old_groups'),
        )

        migrate(migrator.add_column('users', 'groups', User.groups))

        group_map = dict(map(lambda g: (g.name, g.id), Group.select()))
        user_map = defaultdict(list)
        for user in User.select(User, peewee.SQL('old_groups')):
            group_ids = [group_map[group] for group in user.old_groups]
            user.update_instance(groups=group_ids)

        migrate(migrator.drop_column('users', 'old_groups'))

    db.close_db(None)