Coverage for modules\email\migrations\0002_emailfilter_and_outbox.py: 100%

6 statements  

« prev     ^ index     » next       coverage.py v7.16.0, created at 2026-09-05 09:24 +0800

1# Generated migration for EmailFilter model and outbox folder type 

2 

3from django.db import migrations, models 

4import django.db.models.deletion 

5import uuid 

6 

7 

8class Migration(migrations.Migration): 

9 

10 dependencies = [ 

11 ('email', '0001_initial'), 

12 ] 

13 

14 operations = [ 

15 # Add outbox to FOLDER_TYPE_CHOICES is handled via default, no migration needed 

16 

17 migrations.CreateModel( 

18 name='EmailFilter', 

19 fields=[ 

20 ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), 

21 ('created_at', models.DateTimeField(auto_now_add=True)), 

22 ('updated_at', models.DateTimeField(auto_now=True)), 

23 ('tenant_id', models.UUIDField(db_index=True)), 

24 ('name', models.CharField(max_length=128)), 

25 ('conditions', models.JSONField(default=dict)), 

26 ('action_type', models.CharField(max_length=32)), 

27 ('action_folder', models.ForeignKey( 

28 blank=True, 

29 null=True, 

30 on_delete=django.db.models.deletion.SET_NULL, 

31 related_name='filter_actions', 

32 to='email.emailfolder' 

33 )), 

34 ('is_active', models.BooleanField(default=True)), 

35 ('priority', models.IntegerField(default=0)), 

36 ('account', models.ForeignKey( 

37 on_delete=django.db.models.deletion.CASCADE, 

38 related_name='filters', 

39 to='email.emailaccount' 

40 )), 

41 ], 

42 options={ 

43 'ordering': ['priority', 'name'], 

44 'verbose_name_plural': 'Email filters', 

45 }, 

46 ), 

47 ]