Coverage for product_risk_suite/product/migrations/0006_productriskentry_svg_id.py: 71%
14 statements
« prev ^ index » next coverage.py v7.15.0, created at 2026-07-07 12:45 +0000
« prev ^ index » next coverage.py v7.15.0, created at 2026-07-07 12:45 +0000
1# Generated by Django 6.0.5 on 2026-05-13 23:22
3from django.db import migrations, models
4import json
6def migrate_push_pre_svg_ids(apps, schema_editor):
7 ProductRiskEntry = apps.get_model('product', 'ProductRiskEntry')
8 ThreatModelConnectionName = apps.get_model('threat_model', 'ThreatModelConnectionName')
10 pre_svg_id_map = json.load( open( "/tmp/svg-id-migration.json" ) )
11 for pre in ProductRiskEntry.objects.all():
12 for svg_id in pre_svg_id_map[str(pre.id)]:
13 tmcn = ThreatModelConnectionName.objects.get(id = svg_id)
14 pre.svg_id.add(tmcn)
15 pre.save()
17class Migration(migrations.Migration):
19 dependencies = [
20 ('product', '0005_remove_productriskentry_svg_id'),
21 ('threat_model', '0004_threatmodelconnectionname_primary_key'),
22 ]
24 operations = [
25 migrations.AddField(
26 model_name='productriskentry',
27 name='svg_id',
28 field=models.ManyToManyField(blank=True, to='threat_model.threatmodelconnectionname'),
29 ),
30 migrations.RunPython(migrate_push_pre_svg_ids),
31 ]