refactor(breadcrumbs): map step-back route branches into renderer group

This commit is contained in:
2026-04-09 15:03:19 +01:00
parent 0b905f9374
commit cebd47bf1c
6 changed files with 163 additions and 48 deletions
@@ -63,6 +63,9 @@ test("buildBreadcrumbRendererMaps returns grouped maps in explicit precedence or
const callbackRouteRenderersByPath = {
"/theta": () => "theta"
};
const stepBackRouteRenderersByPath = {
"/iota": () => "iota"
};
const caseDetailRouteRenderersByPath = {
"/delta": () => "delta"
};
@@ -76,12 +79,13 @@ test("buildBreadcrumbRendererMaps returns grouped maps in explicit precedence or
simpleMyPortalRouteRenderersByPath,
newAppealRouteRenderersByPath,
callbackRouteRenderersByPath,
stepBackRouteRenderersByPath,
caseDetailRouteRenderersByPath,
detailAndAccountRouteRenderersByPath
});
assert.ok(Array.isArray(result), "Expected grouped maps array");
assert.strictEqual(result.length, 7, "Expected seven grouped route maps");
assert.strictEqual(result.length, 8, "Expected eight grouped route maps");
assert.strictEqual(
result[0],
simpleRouteRenderersByPath,
@@ -109,13 +113,18 @@ test("buildBreadcrumbRendererMaps returns grouped maps in explicit precedence or
);
assert.strictEqual(
result[5],
caseDetailRouteRenderersByPath,
"Expected case detail route renderers sixth"
stepBackRouteRenderersByPath,
"Expected step-back route renderers sixth"
);
assert.strictEqual(
result[6],
caseDetailRouteRenderersByPath,
"Expected case detail route renderers seventh"
);
assert.strictEqual(
result[7],
detailAndAccountRouteRenderersByPath,
"Expected detail and account route renderers seventh"
"Expected detail and account route renderers eighth"
);
});
@@ -136,6 +145,7 @@ test("resolveMappedRouteRenderer returns renderer from first matching grouped ma
simpleMyPortalRouteRenderersByPath: {},
newAppealRouteRenderersByPath: {},
callbackRouteRenderersByPath: {},
stepBackRouteRenderersByPath: {},
caseDetailRouteRenderersByPath: {},
detailAndAccountRouteRenderersByPath: {}
});
@@ -164,6 +174,7 @@ test("resolveMappedRouteRenderer returns renderer from later grouped map when ea
simpleMyPortalRouteRenderersByPath: {},
caseDetailRouteRenderersByPath: {},
callbackRouteRenderersByPath: {},
stepBackRouteRenderersByPath: {},
detailAndAccountRouteRenderersByPath: {
"/account/personaldetails": detailRenderer
}
@@ -190,6 +201,7 @@ test("resolveMappedRouteRenderer returns null for unmapped path", () => {
simpleMyPortalRouteRenderersByPath: {},
newAppealRouteRenderersByPath: {},
callbackRouteRenderersByPath: {},
stepBackRouteRenderersByPath: {},
caseDetailRouteRenderersByPath: {},
detailAndAccountRouteRenderersByPath: {}
});
@@ -219,6 +231,7 @@ test("resolveMappedRouteRenderer skips invalid map entries and non-function rend
},
newAppealRouteRenderersByPath: undefined,
callbackRouteRenderersByPath: {},
stepBackRouteRenderersByPath: {},
caseDetailRouteRenderersByPath: {},
detailAndAccountRouteRenderersByPath: {}
});