Ejemplo n.º 1
0
    def test_to_representation_extra_fields_with_nested_related(self):
        """
        Tests that if the field has a nested related field,
        `to_representation` returns '<nested-field>': {...} using the nested mapping.
        """
        nested_pk = uuid4()
        nested_instance = Mock(id=nested_pk,
                               pk=nested_pk,
                               field1='field1_value')
        nested_field = NestedRelatedField(
            Mock(),
            extra_fields=('field1', ),
        )

        instance_pk = uuid4()
        instance = Mock(id=instance_pk,
                        pk=instance_pk,
                        nested_instance=nested_instance)
        field = NestedRelatedField(
            Mock(),
            extra_fields=(('nested_instance', nested_field), ),
        )
        assert field.to_representation(instance) == {
            'id': str(instance.id),
            'nested_instance': {
                'id': str(nested_pk),
                'field1': 'field1_value',
            },
        }
Ejemplo n.º 2
0
    def get_one_list_group_tier(self, obj):
        """
        :returns: the One List Tier for the group that company `obj` is part of.
        """
        one_list_tier = obj.get_one_list_group_tier()

        field = NestedRelatedField(OneListTier)
        return field.to_representation(one_list_tier)
Ejemplo n.º 3
0
 def test_to_representation(self):
     """Tests that a model instance is converted to a dict."""
     model = Mock()
     uuid_ = uuid4()
     instance = Mock(id=uuid_, pk=uuid_)
     instance.name = 'instance name'
     field = NestedRelatedField(model)
     assert field.to_representation(instance) == {
         'id': str(instance.id),
         'name': instance.name,
     }
Ejemplo n.º 4
0
    def test_to_representation_extra_fields_with_nested_related_none(self):
        """
        Tests that if the field has a nested related field and its value is
        None, `to_representation` returns '<nested-field>': None.
        """
        nested_field = NestedRelatedField(
            Mock(),
            extra_fields=('field1', ),
        )

        instance_pk = uuid4()
        instance = Mock(id=instance_pk, pk=instance_pk, nested_instance=None)
        field = NestedRelatedField(
            Mock(),
            extra_fields=(('nested_instance', nested_field), ),
        )
        assert field.to_representation(instance) == {
            'id': str(instance.id),
            'nested_instance': None,
        }
Ejemplo n.º 5
0
 def test_to_representation_extra_fields(self):
     """Tests that a model instance is converted to a dict with extra fields."""
     model = Mock()
     uuid_ = uuid4()
     uuid2_ = uuid4()
     instance = Mock(id=uuid_,
                     pk=uuid_,
                     test_field='12as',
                     test2=uuid2_,
                     test3='10')
     field = NestedRelatedField(
         model,
         extra_fields=(
             'test_field',
             'test2',
             ('test3', IntegerField()),
         ),
     )
     assert field.to_representation(instance) == {
         'id': str(instance.id),
         'test_field': instance.test_field,
         'test2': uuid2_,
         'test3': 10,
     }