@basic-streams/ap
Version:
ap operator for basic-streams
23 lines (19 loc) • 635 B
text/typescript
import {EventsList, emulate, t, v} from "../emulation"
import ap from "./index"
expect.addSnapshotSerializer(EventsList.jestSerializer)
test("preserves disposers", () => {
const disposer1 = jest.fn()
const disposer2 = jest.fn()
ap(() => disposer1, () => disposer2)(() => {})()
expect(disposer1.mock.calls).toMatchSnapshot()
expect(disposer2.mock.calls).toMatchSnapshot()
})
test("updates result when inputs update", () => {
const result = emulate(create => {
return ap(
create(t(6), v(x => x + 1), t(6), v(x => x - 1)),
create(t(10), v(10), t(10), v(5)),
)
})
expect(result).toMatchSnapshot()
})