Files
madbase/control-plane-ui/node_modules/until-async/src/until.test-d.ts
Vlad Durnea cffdf8af86
Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped
wip:milestone 0 fixes
2026-03-15 12:35:42 +02:00

26 lines
762 B
TypeScript

import { until } from './index.js'
it('infers the data type if no type arguments were provided', async () => {
const [error, data] = await until(() => Promise.resolve(123))
if (error) {
expectTypeOf(error).toEqualTypeOf<Error>()
expectTypeOf(data).toEqualTypeOf<null>()
} else {
expectTypeOf(error).toEqualTypeOf<null>()
expectTypeOf(data).toEqualTypeOf<number>()
}
})
it('treats error/data as a discriminated union type', async () => {
const [error, data] = await until<Error, number>(() => Promise.resolve(123))
if (error) {
expectTypeOf(error).toEqualTypeOf<Error>()
expectTypeOf(data).toEqualTypeOf<null>()
} else {
expectTypeOf(error).toEqualTypeOf<null>()
expectTypeOf(data).toEqualTypeOf<number>()
}
})