Repository navigation
2. Кабанов Дмитрий Константинович. 614 - #90
Dmitrii89-svg wants to merge 7 commits into
Conversation
EvgrafovMichail
left a comment
There was a problem hiding this comment.
Старайтесь не использовать магических констант, а общую логику держать в одном месте, например, в одной функции. Так код будет легче сопровождать и расширять
| else: | ||
| for i in range(len(storage)): | ||
| idmax = max(storage[i][0], idmax) | ||
| return idmax + 1 |
There was a problem hiding this comment.
Не очень понятно, зачем увеличивать idmax на 1 в конце. Из-за этого все id будут на 1 больше, чем требовалось и часть тестов не пройдут.
| # TODO: реализуйте функцию | ||
| return 0 | ||
| idmax = 0 | ||
| if len(storage) == 0: |
There was a problem hiding this comment.
Неправильная проверка на пустоту. Нарушение критерия T4, минус 0.25 балла
| idmax = PRODUCT_ID_MIN | ||
| else: | ||
| for i in range(len(storage)): | ||
| idmax = max(storage[i][0], idmax) |
There was a problem hiding this comment.
Здесь и далее для индексации кортежей используются магические константы (0, 1 и т.д.). Это усложняет чтение кода. К тому же, если структура кортежа поменяется (например, поле с ценой и поле с количеством поменяются местами), придется вручную править все вхождения.
Нарушение критерия S3, минус балл.
| if len(storage) == 0: | ||
| idmax = PRODUCT_ID_MIN | ||
| else: | ||
| for i in range(len(storage)): |
There was a problem hiding this comment.
Нарушение критерия T5. Минус 0.25 балла.
| ``price`` is a :class:`~decimal.Decimal` amount and is rounded | ||
| to the stored money precision before it is saved. | ||
| for i in range(len(storage)): | ||
| if fields[0] == storage[i][1]: |
| if product is None: | ||
| return None | ||
| else: | ||
| if product[3] < quantity: |
| product = read_product(storage, product_id) | ||
| if product is None: | ||
| return None | ||
| else: |
There was a problem hiding this comment.
Нарушение критерия T1. Минус 0.25 балла
| f"not enough stock for product {product_id}: {product[3]} available, {quantity} requested" | ||
| ) | ||
| return None | ||
| else: |
| storage[indp][2], | ||
| storage[indp][3] - quantity, | ||
| ) | ||
| for i in range(len(cart)): |
| if product is None: | ||
| return None | ||
| else: | ||
| indp = storage.index(product) |
There was a problem hiding this comment.
Это логика отчасти дублирует похожую логику в функции add_to_cart. Это нарушение критерия S1. Минус балл
No description provided.