test(breadcrumbs): assert strict null on non-exact route map lookups
This commit is contained in:
@@ -215,6 +215,56 @@ test("resolveMappedRouteRenderer returns null for unmapped path", () => {
|
||||
);
|
||||
});
|
||||
|
||||
test("resolveMappedRouteRenderer returns null for empty, whitespace, and non-exact path variants", () => {
|
||||
const { buildBreadcrumbRendererMaps, resolveMappedRouteRenderer } =
|
||||
loadHelpers();
|
||||
|
||||
const knownRenderer = () => "known";
|
||||
|
||||
const maps = buildBreadcrumbRendererMaps({
|
||||
simpleRouteRenderersByPath: {
|
||||
"/known": knownRenderer
|
||||
},
|
||||
simpleLinkTextPairRenderersByPath: {},
|
||||
simpleMyPortalRouteRenderersByPath: {},
|
||||
newAppealRouteRenderersByPath: {},
|
||||
callbackRouteRenderersByPath: {},
|
||||
stepBackRouteRenderersByPath: {},
|
||||
caseDetailRouteRenderersByPath: {},
|
||||
detailAndAccountRouteRenderersByPath: {}
|
||||
});
|
||||
|
||||
assert.strictEqual(
|
||||
resolveMappedRouteRenderer("", maps),
|
||||
null,
|
||||
"Expected null for empty path lookup when no empty key is mapped"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
resolveMappedRouteRenderer(" ", maps),
|
||||
null,
|
||||
"Expected null for whitespace-only path lookup"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
resolveMappedRouteRenderer("/known ", maps),
|
||||
null,
|
||||
"Expected null for non-exact path variant with trailing whitespace"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
resolveMappedRouteRenderer(" /known", maps),
|
||||
null,
|
||||
"Expected null for non-exact path variant with leading whitespace"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
resolveMappedRouteRenderer("/KNOWN", maps),
|
||||
null,
|
||||
"Expected null for non-exact case-variant path lookup"
|
||||
);
|
||||
});
|
||||
|
||||
test("resolveMappedRouteRenderer skips invalid map entries and non-function renderer values", () => {
|
||||
const { buildBreadcrumbRendererMaps, resolveMappedRouteRenderer } =
|
||||
loadHelpers();
|
||||
|
||||
Reference in New Issue
Block a user