pg.test.ts — drizzle-orm Source File
Architecture documentation for pg.test.ts, a typescript file in the drizzle-orm codebase. 9 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4["pg.test.ts"] 6e66809b_2d53_90e9_685f_ad46ec0ffb9a["pg.schema.ts"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> 6e66809b_2d53_90e9_685f_ad46ec0ffb9a c440e00a_e318_94ac_100c_9843a182c7a4["config"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> c440e00a_e318_94ac_100c_9843a182c7a4 e9c5db23_dc8f_4a33_356a_8f8fbacc4a0e["dockerode"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> e9c5db23_dc8f_4a33_356a_8f8fbacc4a0e 690f7dfc_0aea_9ee8_d6e7_26bbb3689031["drizzle-orm"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> 690f7dfc_0aea_9ee8_d6e7_26bbb3689031 a59b228c_43d4_1772_d3df_66adbf678284["node-postgres"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> a59b228c_43d4_1772_d3df_66adbf678284 249e672a_a0ca_539d_aeb8_1505bb753d14["get-port"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> 249e672a_a0ca_539d_aeb8_1505bb753d14 0d277acf_0d68_9daf_8724_642232a89719["pg"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> 0d277acf_0d68_9daf_8724_642232a89719 de47b2dd_7ed5_08f6_5b8a_f44c9896ce49["uuid"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> de47b2dd_7ed5_08f6_5b8a_f44c9896ce49 8d35eaf2_a542_cfd4_fa1a_fafca0f02686["vitest"] 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 --> 8d35eaf2_a542_cfd4_fa1a_fafca0f02686 style 5b3c2995_652e_f1c1_f00d_51fb9c9e56e4 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import 'dotenv/config';
import Docker from 'dockerode';
import { desc, sql } from 'drizzle-orm';
import { drizzle, type NodePgDatabase } from 'drizzle-orm/node-postgres';
import getPort from 'get-port';
import pg from 'pg';
import { v4 as uuid } from 'uuid';
import { afterAll, beforeAll, beforeEach, expectTypeOf, test } from 'vitest';
import * as schema from './pg.schema.ts';
const { Client } = pg;
const ENABLE_LOGGING = false;
/*
Test cases:
- querying nested relation without PK with additional fields
*/
let pgContainer: Docker.Container;
let db: NodePgDatabase<typeof schema>;
let client: pg.Client;
async function createDockerDB(): Promise<string> {
const docker = new Docker();
const port = await getPort({ port: 5432 });
const image = 'postgres:14';
const pullStream = await docker.pull(image);
await new Promise((resolve, reject) =>
docker.modem.followProgress(pullStream, (err) => err ? reject(err) : resolve(err))
);
pgContainer = await docker.createContainer({
Image: image,
Env: [
'POSTGRES_PASSWORD=postgres',
'POSTGRES_USER=postgres',
'POSTGRES_DB=postgres',
],
name: `drizzle-integration-tests-${uuid()}`,
HostConfig: {
AutoRemove: true,
PortBindings: {
'5432/tcp': [{ HostPort: `${port}` }],
},
},
});
await pgContainer.start();
return `postgres://postgres:postgres@localhost:${port}/postgres`;
}
beforeAll(async () => {
const connectionString = process.env['PG_CONNECTION_STRING'] ?? (await createDockerDB());
const sleep = 250;
let timeLeft = 5000;
let connected = false;
// ... (259 more lines)
Domain
Subdomains
Functions
Dependencies
- config
- dockerode
- drizzle-orm
- get-port
- node-postgres
- pg
- pg.schema.ts
- uuid
- vitest
Source
Frequently Asked Questions
What does pg.test.ts do?
pg.test.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, DatabaseDrivers subdomain.
What functions are defined in pg.test.ts?
pg.test.ts defines 1 function(s): createDockerDB.
What does pg.test.ts depend on?
pg.test.ts imports 9 module(s): config, dockerode, drizzle-orm, get-port, node-postgres, pg, pg.schema.ts, uuid, and 1 more.
Where is pg.test.ts in the architecture?
pg.test.ts is located at integration-tests/tests/relational/issues-schemas/wrong-mapping/pg.test.ts (domain: DrizzleORM, subdomain: DatabaseDrivers, directory: integration-tests/tests/relational/issues-schemas/wrong-mapping).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free