misc: don't cascade group deletion to agendas (#28710)
This commit is contained in:
parent
fcc9a33b96
commit
8025ded392
|
@ -0,0 +1,26 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.12 on 2018-12-06 12:52
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('agendas', '0024_auto_20180426_1127'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='agenda',
|
||||
name='edit_role',
|
||||
field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='auth.Group', verbose_name='Edit Role'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='agenda',
|
||||
name='view_role',
|
||||
field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='auth.Group', verbose_name='View Role'),
|
||||
),
|
||||
]
|
|
@ -66,9 +66,11 @@ class Agenda(models.Model):
|
|||
maximal_booking_delay = models.PositiveIntegerField(
|
||||
_('Maximal booking delay (in days)'), default=56) # eight weeks
|
||||
edit_role = models.ForeignKey(Group, blank=True, null=True, default=None,
|
||||
related_name='+', verbose_name=_('Edit Role'))
|
||||
related_name='+', verbose_name=_('Edit Role'),
|
||||
on_delete=models.SET_NULL)
|
||||
view_role = models.ForeignKey(Group, blank=True, null=True, default=None,
|
||||
related_name='+', verbose_name=_('View Role'))
|
||||
related_name='+', verbose_name=_('View Role'),
|
||||
on_delete=models.SET_NULL)
|
||||
|
||||
class Meta:
|
||||
ordering = ['label']
|
||||
|
|
|
@ -6,6 +6,7 @@ import requests
|
|||
|
||||
|
||||
from django.utils.timezone import now, make_aware, localtime
|
||||
from django.contrib.auth.models import Group
|
||||
from django.core.management import call_command
|
||||
from django.core.management.base import CommandError
|
||||
|
||||
|
@ -454,3 +455,15 @@ def test_timeperiodexception_creation_from_ics_with_recurrences_atreal():
|
|||
desk = Desk(label='Test atreal desk', agenda=agenda)
|
||||
desk.save()
|
||||
assert desk.create_timeperiod_exceptions_from_ics(ICS_ATREAL)
|
||||
|
||||
|
||||
def test_management_role_deletion():
|
||||
group = Group(name=u'Group')
|
||||
group.save()
|
||||
agenda = Agenda(label=u'Test agenda', edit_role=group, view_role=group)
|
||||
agenda.save()
|
||||
|
||||
Group.objects.all().delete()
|
||||
|
||||
Agenda.objects.get(id=agenda.id).view_role is None
|
||||
Agenda.objects.get(id=agenda.id).edit_role is None
|
||||
|
|
Loading…
Reference in New Issue