Renumber circuit groups explicitly
This commit is contained in:
@@ -16,8 +16,10 @@ import "./circuit-group-move-project-command.repository.test.js";
|
||||
import "./circuit-group-subtree-snapshot.test.js";
|
||||
import "./circuit-group-subtree-project-command.repository.test.js";
|
||||
import {
|
||||
buildCircuitGroupRenumberPlan,
|
||||
buildCircuitGroupReorderAssignments,
|
||||
buildNewCircuitGroupSnapshot,
|
||||
canRenumberCircuitGroups,
|
||||
canDeleteCircuitGroup,
|
||||
renameCircuitGroupSnapshot,
|
||||
} from "../src/frontend/utils/circuit-group-editing.js";
|
||||
@@ -118,6 +120,105 @@ describe("circuit group numbering", () => {
|
||||
);
|
||||
});
|
||||
|
||||
it("renumbers a complete category by group order and preserves circuit suffixes", () => {
|
||||
const sections = [
|
||||
{
|
||||
...groupSection("lighting-3", "lighting", 3, 10),
|
||||
prefix: "-1F3.",
|
||||
circuits: [
|
||||
{
|
||||
id: "circuit-7",
|
||||
circuitListId: "list-1",
|
||||
sectionId: "lighting-3",
|
||||
equipmentIdentifier: "-1F3.7",
|
||||
sortOrder: 10,
|
||||
isReserve: false,
|
||||
circuitTotalPower: 0,
|
||||
deviceRows: [],
|
||||
},
|
||||
],
|
||||
components: [
|
||||
{
|
||||
id: "rcd-3",
|
||||
circuitListId: "list-1",
|
||||
sectionId: "lighting-3",
|
||||
equipmentIdentifier: "-1Q3.0",
|
||||
name: "Gruppen-FI",
|
||||
role: "group_residual_current_protection" as const,
|
||||
placement: "group" as const,
|
||||
sortOrder: 10,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
...groupSection("lighting-1", "lighting", 1, 20),
|
||||
prefix: "-1F1.",
|
||||
},
|
||||
groupSection("single-1", "single_phase", 1, 30),
|
||||
];
|
||||
|
||||
assert.deepEqual(buildCircuitGroupRenumberPlan(sections, "lighting"), {
|
||||
groups: [
|
||||
{
|
||||
groupId: "lighting-3",
|
||||
category: "lighting",
|
||||
expectedGroupNumber: 3,
|
||||
targetGroupNumber: 1,
|
||||
expectedPrefix: "-1F3.",
|
||||
targetPrefix: "-1F1.",
|
||||
circuits: [
|
||||
{
|
||||
circuitId: "circuit-7",
|
||||
expectedEquipmentIdentifier: "-1F3.7",
|
||||
targetEquipmentIdentifier: "-1F1.7",
|
||||
},
|
||||
],
|
||||
components: [
|
||||
{
|
||||
componentId: "rcd-3",
|
||||
expectedEquipmentIdentifier: "-1Q3.0",
|
||||
targetEquipmentIdentifier: "-1Q1.0",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
groupId: "lighting-1",
|
||||
category: "lighting",
|
||||
expectedGroupNumber: 1,
|
||||
targetGroupNumber: 2,
|
||||
expectedPrefix: "-1F1.",
|
||||
targetPrefix: "-1F2.",
|
||||
circuits: [],
|
||||
components: [],
|
||||
},
|
||||
],
|
||||
});
|
||||
assert.equal(
|
||||
buildCircuitGroupRenumberPlan(
|
||||
[
|
||||
groupSection("lighting-1", "lighting", 1, 10),
|
||||
groupSection("lighting-2", "lighting", 2, 20),
|
||||
],
|
||||
"lighting"
|
||||
),
|
||||
null
|
||||
);
|
||||
assert.equal(
|
||||
canRenumberCircuitGroups(sections, "lighting"),
|
||||
true
|
||||
);
|
||||
assert.equal(
|
||||
canRenumberCircuitGroups(
|
||||
[
|
||||
groupSection("lighting-1", "lighting", 1, 10),
|
||||
groupSection("lighting-2", "lighting", 2, 20),
|
||||
],
|
||||
"lighting"
|
||||
),
|
||||
false
|
||||
);
|
||||
});
|
||||
|
||||
it("formats the agreed identifiers including the leading hyphen", () => {
|
||||
assert.equal(
|
||||
formatGroupUpstreamProtectionIdentifier("lighting", 1),
|
||||
|
||||
Reference in New Issue
Block a user