Как предоставить запрос к модульным тестам
Как обеспечить контекстный запрос в сериализаторе?
Потому что я получаю эту ошибку:
price = int(self.context.get('request').query_params.get('price', None))
AttributeError: 'NoneType' object has no attribute 'query_params'
serializers.py
class IpotekaSerializer(serializers.ModelSerializer):
payment = serializers.SerializerMethodField()
class Meta:
model = Ipoteka
fields = '__all__'
def get_payment(self, obj) -> int:
"""
:return: Payment value. float | int
:rtype: float | int
:except ValueError, TypeError: Returns errors if URL parameters were incorrectly provided
"""
try:
price = int(self.context.get('request').query_params.get('price', None))
deposit = int(self.context.get('request').query_params.get('deposit', None))
term = int(self.context.get('request').query_params.get('term', None))
if price == 0 or term == 0:
return 0
return self._get_offer_result(price, deposit, term, obj)
except (ValueError, TypeError):
return 0
test_serializer.py
class SerializerTestCase(TestCase):
def test_ser(self):
# some logic
data = IpotekaSerializer([offer_1, offer_2], many=True).data
self.assertEqual(data, expected_data)