22541 extract breadcrumb route-map helpers and add precedence guard tests
This commit is contained in:
@@ -60,17 +60,25 @@ test("breadcrumbs/merged resolver renders mapped routes through single helper in
|
||||
const source = loadBreadcrumbSource();
|
||||
|
||||
assert.strictEqual(
|
||||
source.includes("const mappedRouteRendererMaps = ["),
|
||||
source.includes('from "../lib/routing/breadcrumbRouteMaps"'),
|
||||
true,
|
||||
"Expected grouped mapped route renderer map composition to exist"
|
||||
"Expected breadcrumbs to import shared breadcrumb route-map helper module"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
source.includes(
|
||||
"const getMappedRendererByPath = (path, routeRendererMap) =>"
|
||||
"const mappedRouteRendererMaps = buildBreadcrumbRendererMaps({"
|
||||
),
|
||||
true,
|
||||
"Expected shared mapped renderer lookup helper to exist"
|
||||
"Expected grouped mapped route renderer map composition to use helper builder"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
source.includes(
|
||||
"return resolveMappedRouteRendererByMaps(path, mappedRouteRendererMaps);"
|
||||
),
|
||||
true,
|
||||
"Expected resolver to delegate to shared route-map resolver helper"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
@@ -104,6 +112,32 @@ test("breadcrumbs/merged resolver renders mapped routes through single helper in
|
||||
false,
|
||||
"Expected /myportal/addresssearchresults explicit branch to be removed after mapping"
|
||||
);
|
||||
|
||||
const mapBuilderCallIndex = source.indexOf(
|
||||
"const mappedRouteRendererMaps = buildBreadcrumbRendererMaps({"
|
||||
);
|
||||
const mapBuilderSlice = source.slice(
|
||||
mapBuilderCallIndex,
|
||||
mapBuilderCallIndex + 300
|
||||
);
|
||||
|
||||
const simpleRouteOrderIndex = mapBuilderSlice.indexOf(
|
||||
"simpleRouteRenderersByPath"
|
||||
);
|
||||
const simpleLinkTextPairOrderIndex = mapBuilderSlice.indexOf(
|
||||
"simpleLinkTextPairRenderersByPath"
|
||||
);
|
||||
const simpleMyPortalOrderIndex = mapBuilderSlice.indexOf(
|
||||
"simpleMyPortalRouteRenderersByPath"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
simpleRouteOrderIndex >= 0 &&
|
||||
simpleLinkTextPairOrderIndex > simpleRouteOrderIndex &&
|
||||
simpleMyPortalOrderIndex > simpleLinkTextPairOrderIndex,
|
||||
true,
|
||||
"Expected map builder call to preserve explicit route-map ordering (simple -> link-text -> myportal)"
|
||||
);
|
||||
});
|
||||
|
||||
test("breadcrumbs/dynamic callback branch remains explicit for myportal case incident route", async () => {
|
||||
|
||||
Reference in New Issue
Block a user