Coverage for product_risk_suite / risk_assessment / migrations / 0001_initial.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.14.0, created at 2026-05-13 23:42 +0000

1# Generated by Django 5.2.12 on 2026-04-10 10:05 

2 

3import django.core.validators 

4import django.db.models.deletion 

5from django.conf import settings 

6from django.db import migrations, models 

7 

8 

9class Migration(migrations.Migration): 

10 

11 initial = True 

12 

13 dependencies = [ 

14 migrations.swappable_dependency(settings.AUTH_USER_MODEL), 

15 ] 

16 

17 operations = [ 

18 migrations.CreateModel( 

19 name='Asset', 

20 fields=[ 

21 ('id', models.AutoField(primary_key=True, serialize=False)), 

22 ('name', models.CharField(max_length=200, unique=True)), 

23 ], 

24 ), 

25 migrations.CreateModel( 

26 name='LiveCycle', 

27 fields=[ 

28 ('id', models.AutoField(primary_key=True, serialize=False)), 

29 ('name', models.CharField(max_length=200, unique=True)), 

30 ], 

31 ), 

32 migrations.CreateModel( 

33 name='Origin', 

34 fields=[ 

35 ('id', models.AutoField(primary_key=True, serialize=False)), 

36 ('name', models.CharField(max_length=200, unique=True)), 

37 ], 

38 ), 

39 migrations.CreateModel( 

40 name='RiskRating', 

41 fields=[ 

42 ('id', models.AutoField(primary_key=True, serialize=False)), 

43 ('likelihood_of_occurrence', models.IntegerField(default=1, validators=[django.core.validators.MaxValueValidator(5), django.core.validators.MinValueValidator(1)])), 

44 ('severity_of_impact', models.IntegerField(default=1, validators=[django.core.validators.MaxValueValidator(5), django.core.validators.MinValueValidator(1)])), 

45 ], 

46 ), 

47 migrations.CreateModel( 

48 name='Status', 

49 fields=[ 

50 ('id', models.AutoField(primary_key=True, serialize=False)), 

51 ('status', models.CharField(choices=[('Open', True), ('On going', True), ('Finished', False), ('Rejected', False)], max_length=255, unique=True)), 

52 ], 

53 ), 

54 migrations.CreateModel( 

55 name='Stride', 

56 fields=[ 

57 ('id', models.AutoField(primary_key=True, serialize=False)), 

58 ('name', models.CharField(choices=[('S', 'Spoofing'), ('T', 'Tampering'), ('R', 'Repudiation'), ('I', 'Information Disclosure'), ('D', 'Denial of Service'), ('E', 'Elevation of Privileges')], max_length=255, unique=True)), 

59 ], 

60 ), 

61 migrations.CreateModel( 

62 name='SecurityRequirement', 

63 fields=[ 

64 ('id', models.AutoField(primary_key=True, serialize=False)), 

65 ('norm_short', models.CharField(max_length=255)), 

66 ('norm_long', models.CharField(max_length=255)), 

67 ('description_short', models.CharField(max_length=255)), 

68 ('description_long', models.TextField()), 

69 ('slug', models.SlugField()), 

70 ], 

71 options={ 

72 'unique_together': {('norm_short', 'description_short')}, 

73 }, 

74 ), 

75 migrations.CreateModel( 

76 name='RiskMitigation', 

77 fields=[ 

78 ('id', models.AutoField(primary_key=True, serialize=False)), 

79 ('mitigation', models.TextField(blank=True, null=True)), 

80 ('rational', models.TextField(blank=True, null=True)), 

81 ('security_requirements', models.ManyToManyField(to='risk_assessment.securityrequirement')), 

82 ], 

83 ), 

84 migrations.CreateModel( 

85 name='Evidence', 

86 fields=[ 

87 ('id', models.AutoField(primary_key=True, serialize=False)), 

88 ('due_date', models.DateField()), 

89 ('evidence', models.TextField(blank=True, null=True)), 

90 ('responsible', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), 

91 ('status', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='risk_assessment.status')), 

92 ], 

93 ), 

94 migrations.CreateModel( 

95 name='Risk', 

96 fields=[ 

97 ('id', models.AutoField(primary_key=True, serialize=False)), 

98 ('custom_id', models.CharField(default='RISK-', max_length=255, unique=True)), 

99 ('title', models.CharField(max_length=255)), 

100 ('description', models.TextField()), 

101 ('asset', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='risk_assessment.asset')), 

102 ('live_cycle', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='risk_assessment.livecycle')), 

103 ('origin', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='risk_assessment.origin')), 

104 ('stride', models.ManyToManyField(to='risk_assessment.stride')), 

105 ], 

106 ), 

107 ]