fix(core): remove session import cycle (#37596)
Co-authored-by: James Long <17031+jlongster@users.noreply.github.com>
This commit is contained in:
parent
deb5b144c3
commit
529d55b1c3
6 changed files with 22 additions and 29 deletions
|
|
@ -32,7 +32,6 @@ const b = make({ service: B, layer: bLayer, deps: [a] })
|
|||
const c = make({ service: C, layer: cLayer, deps: [a, b] })
|
||||
const failing = make({ service: A, layer: failingA, deps: [] })
|
||||
const dependent = make({ service: B, layer: bLayer, deps: [failing] })
|
||||
make({ service: B, layer: bLayer, deps: () => [a] })
|
||||
const inputA = LayerNode.unbound(A, tags.values.app)
|
||||
const inputDependent = make({ service: B, layer: bLayer, deps: [inputA] })
|
||||
|
||||
|
|
@ -47,9 +46,6 @@ make({ service: A, name: "a", layer: aLayer, deps: [] })
|
|||
// @ts-expect-error B requires A
|
||||
make({ service: B, layer: bLayer, deps: [] })
|
||||
|
||||
// @ts-expect-error Lazy dependencies must still provide A
|
||||
make({ service: B, layer: bLayer, deps: () => [] })
|
||||
|
||||
// @ts-expect-error C requires A and B
|
||||
make({ service: C, layer: cLayer, deps: [a] })
|
||||
|
||||
|
|
|
|||
|
|
@ -37,12 +37,6 @@ describe("layer node", () => {
|
|||
expect(await Effect.runPromise(program)).toBe("hello production")
|
||||
})
|
||||
|
||||
test("resolves lazy dependencies when compiling", async () => {
|
||||
const greeting = make({ service: Greeting, layer: greetingLayer, deps: () => [value] })
|
||||
const program = Effect.map(Greeting, (item) => item.value).pipe(Effect.provide(build(greeting)))
|
||||
expect(await Effect.runPromise(program)).toBe("hello production")
|
||||
})
|
||||
|
||||
test("exposes roots but hides transitive dependencies", () => {
|
||||
const layer = build(LayerNode.group([greeting]))
|
||||
const check: Layer.Layer<Greeting> = layer
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue