Add test
Lint / lint (push) Failing after 11s

This commit is contained in:
Julien Valverdé
2026-05-28 01:02:18 +02:00
parent 02770b115a
commit 7ed5135aa6
+25
View File
@@ -233,6 +233,31 @@ describe("Lens", () => {
expect(result.count).toBe(iterations) expect(result.count).toBe(iterations)
}) })
test("unwrap delegates reads, writes, and locking to the inner lens", async () => {
const iterations = 100
const result = await Effect.runPromise(Effect.flatMap(
SubscriptionRef.make(0),
parent => {
const lens = Lens.unwrap(Effect.succeed(Lens.fromSubscriptionRef(parent)))
return Effect.flatMap(
Effect.forEach(
Array.from({ length: iterations }),
() => Lens.updateEffect(
lens,
count => Effect.as(Effect.yieldNow(), count + 1),
),
{ concurrency: "unbounded", discard: true },
),
() => Effect.all([Lens.get(lens), parent.get] as const),
)
},
))
expect(result).toEqual([iterations, iterations])
})
test("focusObjectOn focuses a nested property without touching other fields", async () => { test("focusObjectOn focuses a nested property without touching other fields", async () => {
const [initialCount, updatedState] = await Effect.runPromise( const [initialCount, updatedState] = await Effect.runPromise(
Effect.flatMap( Effect.flatMap(