one
Version:
One is a new React Framework that makes Vite serve both native and web.
45 lines (43 loc) • 2.44 kB
JavaScript
;
var import_vitest = require("vitest");
var import_getLinking = require("../link/getLinking.native.js");
var import_getRoutes = require("./getRoutes.native.js");
var import_getLinkingConfig = require("./getLinkingConfig.native.js");
var import_testing_utils = require("../testing-utils.native.js");
(0, import_vitest.describe)("getLinkingConfig", function () {
(0, import_vitest.it)("expands configured schemes into prefixes", function () {
var routes = (0, import_getRoutes.getRoutes)((0, import_testing_utils.getMockContext)(["_layout.tsx", "index.tsx"]));
var linking = (0, import_getLinkingConfig.getLinkingConfig)(routes, true, {
scheme: "threepunchconvo"
});
(0, import_vitest.expect)(linking.prefixes).toEqual(["threepunchconvo://", "threepunchconvo:///"]);
});
(0, import_vitest.it)("merges explicit prefixes with scheme-derived prefixes", function () {
var routes = (0, import_getRoutes.getRoutes)((0, import_testing_utils.getMockContext)(["_layout.tsx", "index.tsx"]));
var linking = (0, import_getLinkingConfig.getLinkingConfig)(routes, true, {
scheme: "threepunchconvo",
prefixes: ["threepunchconvo://app"]
});
(0, import_vitest.expect)(linking.prefixes).toEqual(["threepunchconvo://", "threepunchconvo:///", "threepunchconvo://app"]);
});
});
(0, import_vitest.describe)("normalizeLinkingConfig", function () {
(0, import_vitest.it)("merges manifest-default prefixes with user-supplied scheme/prefixes", function () {
var result = (0, import_getLinking.normalizeLinkingConfig)({
scheme: "foo",
prefixes: ["https://example.test/app"]
}, ["bar://", "bar:///"]);
(0, import_vitest.expect)(result.prefixes).toEqual(["bar://", "bar:///", "foo://", "foo:///", "https://example.test/app"]);
});
(0, import_vitest.it)("falls back to manifest-default prefixes when nothing is configured", function () {
var result = (0, import_getLinking.normalizeLinkingConfig)(void 0, ["bar://", "bar:///"]);
(0, import_vitest.expect)(result.prefixes).toEqual(["bar://", "bar:///"]);
});
(0, import_vitest.it)("dedupes overlapping defaults and configured prefixes", function () {
var result = (0, import_getLinking.normalizeLinkingConfig)({
scheme: "foo"
}, ["foo://", "foo:///"]);
(0, import_vitest.expect)(result.prefixes).toEqual(["foo://", "foo:///"]);
});
});
//# sourceMappingURL=getLinkingConfig.test.native.js.map