21 lines
962 B
TypeScript
21 lines
962 B
TypeScript
import assert from "node:assert/strict";
|
|
import { test } from "node:test";
|
|
import { loadReaderWorkspace } from "./reader-fixture.js";
|
|
import { compileExecutionPlan } from "../src/execution-world/index.js";
|
|
test("local relationship pages may reuse exactly the confirmed source window", async () => {
|
|
const workspace = await loadReaderWorkspace((name, text) => {
|
|
if (name === "queries/replica-inputs.graphql")
|
|
return text.replace("highlights(all: 1000)", "highlights(first: 10)");
|
|
if (name === "queries/reader-screen.graphql")
|
|
return text
|
|
.replace("ReaderScreen($color: String!)", "ReaderScreen")
|
|
.replace(
|
|
"highlights(all: 1000, where: {color: {eq: $color}}, orderBy: [{range: {start: ASC}}])",
|
|
"highlights(first: 10)",
|
|
)
|
|
.replace("_camino { relations { highlights { aggregate { count } } } }", "");
|
|
return text;
|
|
});
|
|
assert.doesNotThrow(() => compileExecutionPlan(workspace));
|
|
});
|