54 lines
1.4 KiB
TypeScript
54 lines
1.4 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import type { RouteWarning } from "@watermaps/shared";
|
|
import {
|
|
isOpenRouteWarning,
|
|
isRetainedRouteWarning
|
|
} from "../src/lib/route-warnings";
|
|
|
|
describe("route warning filters", () => {
|
|
it("filters every retired fairway and depth warning code centrally", () => {
|
|
const retiredCodes = [
|
|
"FAIRWAY_ROUTE",
|
|
"FAIRWAY_DATA_NOT_OFFICIAL",
|
|
"DEPTH_UNKNOWN",
|
|
"DEPTH_PARTIAL",
|
|
"NO_KNOWN_DEPTH",
|
|
"DEPTH_TOO_SHALLOW"
|
|
];
|
|
|
|
for (const code of retiredCodes) {
|
|
const warning: RouteWarning = {
|
|
code,
|
|
severity: "critical",
|
|
message: `Alter Hinweis ${code}`
|
|
};
|
|
expect(isRetainedRouteWarning(warning)).toBe(false);
|
|
expect(isOpenRouteWarning(warning)).toBe(false);
|
|
}
|
|
});
|
|
|
|
it("retains current warnings and only counts non-informational ones as open", () => {
|
|
expect(
|
|
isRetainedRouteWarning({
|
|
code: "ROUTE_SEARCH_LIMITED",
|
|
severity: "caution",
|
|
message: "Suche begrenzt"
|
|
})
|
|
).toBe(true);
|
|
expect(
|
|
isOpenRouteWarning({
|
|
code: "ROUTE_SEARCH_LIMITED",
|
|
severity: "caution",
|
|
message: "Suche begrenzt"
|
|
})
|
|
).toBe(true);
|
|
expect(
|
|
isOpenRouteWarning({
|
|
code: "ROUTING_SOURCE",
|
|
severity: "info",
|
|
message: "Routingquelle"
|
|
})
|
|
).toBe(false);
|
|
});
|
|
});
|