|
|
import { describe, expect, it } from "vitest";
|
|
|
import { buildNetworkDiagnostics } from "@/workers/rpa/address-adapter/diagnostics";
|
|
|
|
|
|
describe("address-adapter diagnostics", () => {
|
|
|
it("buildNetworkDiagnostics 要求 place 200 才算 httpOk", () => {
|
|
|
const diag = buildNetworkDiagnostics(
|
|
|
{
|
|
|
getObservedPlaceCommitIds: () => ["ChIJ_pickup", "ChIJ_delivery"],
|
|
|
getPlaceNetworkLog: () => [
|
|
|
{
|
|
|
placeId: "ChIJ_delivery",
|
|
|
status: 200,
|
|
|
url: "https://services.mothership.com/axel/location/place/ChIJ_delivery",
|
|
|
at: 1,
|
|
|
},
|
|
|
],
|
|
|
hasPlaceCommit: (id) => id === "ChIJ_delivery",
|
|
|
hasSuccessfulPlaceNetworkRequest: (id) => id === "ChIJ_delivery",
|
|
|
},
|
|
|
"ChIJ_delivery",
|
|
|
"ChIJ_pickup",
|
|
|
);
|
|
|
|
|
|
expect(diag.placeRequestHttpOk).toBe(true);
|
|
|
expect(diag.pickupLostAfterDelivery).toBe(false);
|
|
|
expect(diag.placeNetworkEvents).toHaveLength(1);
|
|
|
});
|
|
|
|
|
|
it("buildNetworkDiagnostics 不在 bridge 层判定 pickupLost(改由 widget DOM)", () => {
|
|
|
const diag = buildNetworkDiagnostics(
|
|
|
{
|
|
|
getObservedPlaceCommitIds: () => ["ChIJ_delivery"],
|
|
|
getPlaceNetworkLog: () => [
|
|
|
{
|
|
|
placeId: "ChIJ_delivery",
|
|
|
status: 200,
|
|
|
url: "",
|
|
|
at: 1,
|
|
|
},
|
|
|
],
|
|
|
hasPlaceCommit: () => true,
|
|
|
hasSuccessfulPlaceNetworkRequest: () => true,
|
|
|
},
|
|
|
"ChIJ_delivery",
|
|
|
"ChIJ_pickup",
|
|
|
);
|
|
|
|
|
|
expect(diag.pickupLostAfterDelivery).toBe(false);
|
|
|
});
|
|
|
});
|