1
0
forked from erp-dev/erp

feat: added migrate for set id init value into 8000 of plate_order

This commit is contained in:
2025-11-20 13:01:44 +08:00
parent ad0b6a84d2
commit 6091280fdc
12 changed files with 931 additions and 606 deletions

View File

@@ -1,3 +1,4 @@
from django.core.exceptions import ValidationError
from django.test import TestCase
from django.utils import timezone
from decimal import Decimal
@@ -128,6 +129,54 @@ class StockServicesTestCase(TestCase):
)
class StockChangeRecordValidationTestCase(StockServicesTestCase):
"""验证 StockChangeRecord.clean 的来源类型校验"""
def test_add_record_accepts_combine_source(self):
record = models.StockChangeRecord(
merchant=self.merchant,
warehouse=self.warehouse_main,
type=models.StockChangeTypeEnum.ADD,
source_type=models.StockChangeSourceEnum.COMBINE,
)
try:
record.full_clean()
except ValidationError as exc:
self.fail(f'合并应视为入库来源,但触发校验错误: {exc}')
def test_remove_record_accepts_explode_source(self):
record = models.StockChangeRecord(
merchant=self.merchant,
warehouse=self.warehouse_main,
type=models.StockChangeTypeEnum.REMOVE,
source_type=models.StockChangeSourceEnum.EXPLODE,
)
try:
record.full_clean()
except ValidationError as exc:
self.fail(f'拆卷应视为出库来源,但触发校验错误: {exc}')
def test_add_record_rejects_outgoing_source(self):
record = models.StockChangeRecord(
merchant=self.merchant,
warehouse=self.warehouse_main,
type=models.StockChangeTypeEnum.ADD,
source_type=models.StockChangeSourceEnum.SALES,
)
with self.assertRaises(ValidationError):
record.full_clean()
def test_remove_record_rejects_incoming_source(self):
record = models.StockChangeRecord(
merchant=self.merchant,
warehouse=self.warehouse_main,
type=models.StockChangeTypeEnum.REMOVE,
source_type=models.StockChangeSourceEnum.PURCHASE,
)
with self.assertRaises(ValidationError):
record.full_clean()
class FindInventoryTestCase(StockServicesTestCase):
"""测试 find_inventory 函数"""