From 70bc7c8d9260d1cf594d000d6b7159e953f7b482 Mon Sep 17 00:00:00 2001 From: Igal Klebanov Date: Mon, 5 Aug 2024 01:54:49 +0300 Subject: [PATCH] test --- test/typings/test-d/select.test-d.ts | 30 ++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/test/typings/test-d/select.test-d.ts b/test/typings/test-d/select.test-d.ts index fd5997951..d4c006d57 100644 --- a/test/typings/test-d/select.test-d.ts +++ b/test/typings/test-d/select.test-d.ts @@ -5,11 +5,17 @@ import { NotNull, RawBuilder, Selectable, + SelectType, Simplify, sql, } from '..' -import { Database, Person } from '../shared' -import { expectType, expectError } from 'tsd' +import { Database, Person, Pet } from '../shared' +import { + expectType, + expectError, + expectAssignable, + expectNotAssignable, +} from 'tsd' async function testSelectSingle(db: Kysely) { const qb = db.selectFrom('person') @@ -206,6 +212,26 @@ async function testSelectAll(db: Kysely) { species: 'dog' | 'cat' deleted_at: Date | null }>(r5) + + const r6 = await db + .selectFrom('person') + .leftJoin('pet', 'person.id', 'pet.owner_id') + .selectAll('person') + .selectAll('pet') + .executeTakeFirstOrThrow() + + expectAssignable<{ id: string | null }>(r6) + expectNotAssignable<{ id: number }>(r6) + + const r7 = await db + .selectFrom('person') + .leftJoin('pet', 'person.id', 'pet.owner_id') + .selectAll('pet') + .selectAll('person') + .executeTakeFirstOrThrow() + + expectAssignable<{ id: number }>(r7) + expectNotAssignable<{ id: string | null }>(r7) } async function testSelectMultiple(db: Kysely) {