Build composable Camino packages with explicit type and source dependencies
This commit is contained in:
@@ -154,3 +154,22 @@ test("transaction process services do not promise generated TypeScript modules",
|
||||
throw Error("No adapter claimed");
|
||||
});
|
||||
});
|
||||
|
||||
test("a remote export group in a mixed package witnesses only its own adapter", async () => {
|
||||
const { asyncObjectPlan } = await import("./async-fixture.js");
|
||||
const { expectedArtifactReceipt } = await import("../src/execution-world/receipts.js");
|
||||
const plan = await asyncObjectPlan();
|
||||
const fixture = buildArtifactFixture(plan, "async:controller-runtime@1");
|
||||
const pkg = plan.definition.packages.find((entry) => entry.revision === fixture.manifest.packageRevisionId)!;
|
||||
fixture.manifest.implementations = fixture.manifest.implementations.filter(
|
||||
(entry) => entry.target === "server" && entry.compatibility === "quixos-js-module-v1",
|
||||
);
|
||||
for (const implementation of fixture.manifest.implementations)
|
||||
implementation.exports = implementation.exports.filter((id) =>
|
||||
pkg.exports.some((entry) => entry.id === id && entry.execution.kind === "remote"),
|
||||
);
|
||||
assert.deepEqual(
|
||||
expectedArtifactReceipt(plan, fixture.manifest, "a".repeat(64)).receipt.generated.map((file) => file.path),
|
||||
["share/quixos/generated/remote.ts"],
|
||||
);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user