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
« 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
3from django.db import migrations, models
4import django.db.models.deletion
5import uuid
8class Migration(migrations.Migration):
10 dependencies = [
11 ('email', '0001_initial'),
12 ]
14 operations = [
15 # Add outbox to FOLDER_TYPE_CHOICES is handled via default, no migration needed
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 ]