Completed
Push — master ( ebb95c...951ec2 )
by Camille
01:25
created

GroupMemberValueSerializer.validate()   A

Complexity

Conditions 2

Size

Total Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 7
c 1
b 0
f 0
rs 9.4285
cc 2
1
from rest_framework import serializers
2
3
from sigma_core.models.group_member_value import GroupMemberValue
4
from sigma_core.models.group_member import GroupMember
5
from sigma_core.models.group_field import GroupField
6
7
class GroupMemberValueSerializer(serializers.ModelSerializer):
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable serializers does not seem to be defined.
Loading history...
8
    class Meta:
9
        model = GroupMemberValue
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable GroupMemberValue does not seem to be defined.
Loading history...
10
        read_only_fields = ('membership', 'field')
11
12
    membership = serializers.PrimaryKeyRelatedField(queryset=GroupMember.objects.all())
13
    field = serializers.PrimaryKeyRelatedField(queryset=GroupField.objects.all())
14
    value = serializers.CharField(max_length=GroupField.FIELD_VALUE_MAX_LENGTH)
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable GroupField does not seem to be defined.
Loading history...
15
16
    def validate(self, fields):
17
        group_field = fields.get('field')
18
        mship = fields.get('membership')
19
        if group_field.group != mship.group:
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable group_field does not seem to be defined.
Loading history...
20
            raise serializers.ValidationError("Condition (field.group == membership.group) is not verified.")
21
        group_field.validator.validate_input(group_field.validator_values, fields.get('value'))
22
        return super().validate(fields)
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable fields does not seem to be defined.
Loading history...
23