fix(acceptance): reuse initialized pallet fixtures

This commit is contained in:
2026-09-10 20:47:15 +08:00
parent 69e80a736e
commit 47a70406f6
12 changed files with 65 additions and 95 deletions
@@ -16,7 +16,8 @@ ON DUPLICATE KEY UPDATE
capacity_cbm=VALUES(capacity_cbm),
weight_kg=VALUES(weight_kg),
color=VALUES(color),
remark=VALUES(remark);
remark=VALUES(remark),
deleted=0;
DROP PROCEDURE IF EXISTS assert_domestic_pallet_seed;
DELIMITER //
@@ -38,6 +39,14 @@ BEGIN
) THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT='国内作业仓木托盘、塑料托盘初始化不完整';
END IF;
IF (SELECT COUNT(*)
FROM wh_pallet
WHERE tenant_id=0
AND deleted=0
AND ((warehouse_id=190000000000000001 AND pallet_code IN ('TP-001','YW-TP-002'))
OR (warehouse_id=190000000000000002 AND pallet_code IN ('TP-002','DG-TP-002')))) <> 4 THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT='国内作业仓固定可复用托盘编码初始化不完整';
END IF;
END//
DELIMITER ;
CALL assert_domestic_pallet_seed();
@@ -27,6 +27,7 @@ class InitialWarehouseResourceSeedSqlContractTest {
}
private static void assertSeed(String sql, String yiwuId, String dongguanId, String idPrefix) {
String compactSql = sql.replaceAll("\\s+", "");
int locationSeedStart = sql.indexOf("WHEN zones.zone_index = 0 AND slots.slot_number = 1 THEN 201");
int locationSeedEnd = sql.indexOf("DROP PROCEDURE IF EXISTS assert_yiwu_location_seed", locationSeedStart);
String locationSeed = sql.substring(locationSeedStart, locationSeedEnd);
@@ -37,6 +38,7 @@ class InitialWarehouseResourceSeedSqlContractTest {
.contains("0," + dongguanId + ",'DG-TP-002','木托盘'")
.contains("COUNT(DISTINCT pallet.pallet_type)")
.contains("国内作业仓木托盘、塑料托盘初始化不完整")
.contains("固定可复用托盘编码初始化不完整")
.doesNotContain("'胶托盘'")
.contains("WHEN zones.zone_index = 0 AND slots.slot_number = 1 THEN 201")
.contains("ELSE 203 + zones.zone_index * 15 + slots.slot_number")
@@ -55,6 +57,7 @@ class InitialWarehouseResourceSeedSqlContractTest {
.contains("'AVAILABLE'")
.doesNotContain("INSERT INTO wh_location_reservation")
.doesNotContain("INSERT INTO wh_location_occupancy");
assertThat(compactSql).contains("remark=VALUES(remark),deleted=0;");
assertThat(locationSeed)
.doesNotContain("status='AVAILABLE'")
.doesNotContain("status = 'AVAILABLE'")