Home / File/ sqlite.test.ts — drizzle-orm Source File

sqlite.test.ts — drizzle-orm Source File

Architecture documentation for sqlite.test.ts, a typescript file in the drizzle-orm codebase. 11 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  8e76f834_9b1b_43fc_62c8_940700f8859d["sqlite.test.ts"]
  98f24684_7026_c838_c58f_d0555f9affa9["index.ts"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 98f24684_7026_c838_c58f_d0555f9affa9
  3594c1f8_e289_c87e_9f92_6f1cf7eb00b7["utils.ts"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 3594c1f8_e289_c87e_9f92_6f1cf7eb00b7
  6c645383_bc9e_0c4e_1d50_f7a3865c1d28["Expect"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 6c645383_bc9e_0c4e_1d50_f7a3865c1d28
  96d30bdb_daf2_c71a_e75b_71042e300cf7["expectSchemaShape"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 96d30bdb_daf2_c71a_e75b_71042e300cf7
  4859a2e0_4bd3_506a_e7e6_bf4316983bb5["arktype"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 4859a2e0_4bd3_506a_e7e6_bf4316983bb5
  690f7dfc_0aea_9ee8_d6e7_26bbb3689031["drizzle-orm"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 690f7dfc_0aea_9ee8_d6e7_26bbb3689031
  25248a9d_ba06_2b33_4421_8575da2f9c34["sqlite-core"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 25248a9d_ba06_2b33_4421_8575da2f9c34
  e3330aa9_fee9_b340_1093_1c8a98953c05["json-rules-engine"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> e3330aa9_fee9_b340_1093_1c8a98953c05
  8d35eaf2_a542_cfd4_fa1a_fafca0f02686["vitest"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 8d35eaf2_a542_cfd4_fa1a_fafca0f02686
  05f0a280_d0c9_693a_a4bf_83cc671012d2["column.ts"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 05f0a280_d0c9_693a_a4bf_83cc671012d2
  45e26f9d_6717_943d_0371_5d349b8c9472["constants.ts"]
  8e76f834_9b1b_43fc_62c8_940700f8859d --> 45e26f9d_6717_943d_0371_5d349b8c9472
  style 8e76f834_9b1b_43fc_62c8_940700f8859d fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { Type, type } from 'arktype';
import { type Equal, sql } from 'drizzle-orm';
import { blob, customType, int, sqliteTable, sqliteView, text } from 'drizzle-orm/sqlite-core';
import type { TopLevelCondition } from 'json-rules-engine';
import { test } from 'vitest';
import { bigintNarrow, bufferSchema, jsonSchema } from '~/column.ts';
import { CONSTANTS } from '~/constants.ts';
import { createInsertSchema, createSelectSchema, createUpdateSchema } from '../src';
import { Expect, expectSchemaShape } from './utils.ts';

const intSchema = type.keywords.number.integer.atLeast(Number.MIN_SAFE_INTEGER).atMost(Number.MAX_SAFE_INTEGER);
const textSchema = type.string;

test('table - select', (t) => {
	const table = sqliteTable('test', {
		id: int().primaryKey({ autoIncrement: true }),
		name: text().notNull(),
	});

	const result = createSelectSchema(table);
	const expected = type({ id: intSchema, name: textSchema });
	expectSchemaShape(t, expected).from(result);
	Expect<Equal<typeof result, typeof expected>>();
});

test('table - insert', (t) => {
	const table = sqliteTable('test', {
		id: int().primaryKey({ autoIncrement: true }),
		name: text().notNull(),
		age: int(),
	});

	const result = createInsertSchema(table);
	const expected = type({ id: intSchema.optional(), name: textSchema, age: intSchema.or(type.null).optional() });
	expectSchemaShape(t, expected).from(result);
	Expect<Equal<typeof result, typeof expected>>();
});

test('table - update', (t) => {
	const table = sqliteTable('test', {
		id: int().primaryKey({ autoIncrement: true }),
		name: text().notNull(),
		age: int(),
	});

	const result = createUpdateSchema(table);
	const expected = type({
		id: intSchema.optional(),
		name: textSchema.optional(),
		age: intSchema.or(type.null).optional(),
	});
	expectSchemaShape(t, expected).from(result);
	Expect<Equal<typeof result, typeof expected>>();
});

test('view qb - select', (t) => {
	const table = sqliteTable('test', {
		id: int().primaryKey({ autoIncrement: true }),
		name: text().notNull(),
	});
// ... (341 more lines)

Subdomains

Dependencies

Frequently Asked Questions

What does sqlite.test.ts do?
sqlite.test.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the ValidationAdapters domain, TypeMapping subdomain.
What functions are defined in sqlite.test.ts?
sqlite.test.ts defines 2 function(s): nestedSelect, view.
What does sqlite.test.ts depend on?
sqlite.test.ts imports 11 module(s): Expect, arktype, column.ts, constants.ts, drizzle-orm, expectSchemaShape, index.ts, json-rules-engine, and 3 more.
Where is sqlite.test.ts in the architecture?
sqlite.test.ts is located at drizzle-arktype/tests/sqlite.test.ts (domain: ValidationAdapters, subdomain: TypeMapping, directory: drizzle-arktype/tests).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free