Adds unit testing for barcode field

This commit is contained in:
Oliver Walters
2021-09-07 23:34:14 +10:00
parent bf05c9cfae
commit f38bf6e20a
4 changed files with 73 additions and 1 deletions

View File

@ -233,6 +233,8 @@ class POLineItemReceiveSerializer(serializers.Serializer):
barcode = serializers.CharField(
label=_('Barcode Hash'),
help_text=_('Unique identifier field'),
default='',
required=False,
)
def validate_barcode(self, barcode):
@ -247,6 +249,8 @@ class POLineItemReceiveSerializer(serializers.Serializer):
if stock.models.StockItem.objects.filter(uid=barcode).exists():
raise ValidationError(_('Barcode is already in use'))
return barcode
class Meta:
fields = [
'barcode',
@ -288,7 +292,7 @@ class POReceiveSerializer(serializers.Serializer):
unique_barcodes = set()
for item in items:
barcode = item.get('barcode', None)
barcode = item.get('barcode', '')
if barcode:
if barcode in unique_barcodes: