Home / File/ pg-to-camel.test.ts — drizzle-orm Source File

pg-to-camel.test.ts — drizzle-orm Source File

Architecture documentation for pg-to-camel.test.ts, a typescript file in the drizzle-orm codebase. 6 imports, 0 dependents.

File typescript DrizzleORM DatabaseDrivers 6 imports 2 functions

Entity Profile

Dependency Diagram

graph LR
  a67d35ca_eceb_c50d_89c0_ff46a930ce35["pg-to-camel.test.ts"]
  07445d0e_3235_2bb0_78cf_fa72a47ceb7f["postgres"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> 07445d0e_3235_2bb0_78cf_fa72a47ceb7f
  8d35eaf2_a542_cfd4_fa1a_fafca0f02686["vitest"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> 8d35eaf2_a542_cfd4_fa1a_fafca0f02686
  3a00d3dc_4c3e_b034_8774_ca007103e041["pg-core"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> 3a00d3dc_4c3e_b034_8774_ca007103e041
  84922e60_5940_edf6_bfb5_b456808847b9["postgres-js"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> 84922e60_5940_edf6_bfb5_b456808847b9
  53804b55_ded4_8cdd_2d99_47fbfb11df9d["relations"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> 53804b55_ded4_8cdd_2d99_47fbfb11df9d
  cb29afcc_14c9_059c_db9f_fd9677e8b162["sql"]
  a67d35ca_eceb_c50d_89c0_ff46a930ce35 --> cb29afcc_14c9_059c_db9f_fd9677e8b162
  style a67d35ca_eceb_c50d_89c0_ff46a930ce35 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import postgres from 'postgres';
import { beforeEach, describe, it } from 'vitest';
import { alias, boolean, integer, pgSchema, pgTable, serial, text, union } from '~/pg-core';
import { drizzle } from '~/postgres-js';
import { relations } from '~/relations';
import { asc, eq, sql } from '~/sql';

const testSchema = pgSchema('test');
const users = pgTable('users', {
	id: serial().primaryKey(),
	first_name: text().notNull(),
	last_name: text().notNull(),
	// Test that custom aliases remain
	age: integer('AGE'),
});
const usersRelations = relations(users, ({ one }) => ({
	developers: one(developers),
}));
const developers = testSchema.table('developers', {
	user_id: serial().primaryKey().references(() => users.id),
	uses_drizzle_orm: boolean().notNull(),
});
const developersRelations = relations(developers, ({ one }) => ({
	user: one(users, {
		fields: [developers.user_id],
		references: [users.id],
	}),
}));
const devs = alias(developers, 'devs');
const schema = { users, usersRelations, developers, developersRelations };

const db = drizzle(postgres(''), { schema, casing: 'camelCase' });

const usersCache = {
	'public.users.id': 'id',
	'public.users.first_name': 'firstName',
	'public.users.last_name': 'lastName',
	'public.users.AGE': 'age',
};
const developersCache = {
	'test.developers.user_id': 'userId',
	'test.developers.uses_drizzle_orm': 'usesDrizzleOrm',
};
const cache = {
	...usersCache,
	...developersCache,
};

const fullName = sql`${users.first_name} || ' ' || ${users.last_name}`.as('name');

describe('postgres to camel case', () => {
	beforeEach(() => {
		db.dialect.casing.clearCache();
	});

	it('select', ({ expect }) => {
		const query = db
			.select({ name: fullName, age: users.age })
			.from(users)
			.leftJoin(developers, eq(users.id, developers.user_id))
// ... (187 more lines)

Domain

Subdomains

Dependencies

  • pg-core
  • postgres
  • postgres-js
  • relations
  • sql
  • vitest

Frequently Asked Questions

What does pg-to-camel.test.ts do?
pg-to-camel.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-to-camel.test.ts?
pg-to-camel.test.ts defines 2 function(s): developersRelations, usersRelations.
What does pg-to-camel.test.ts depend on?
pg-to-camel.test.ts imports 6 module(s): pg-core, postgres, postgres-js, relations, sql, vitest.
Where is pg-to-camel.test.ts in the architecture?
pg-to-camel.test.ts is located at drizzle-orm/tests/casing/pg-to-camel.test.ts (domain: DrizzleORM, subdomain: DatabaseDrivers, directory: drizzle-orm/tests/casing).

Analyze Your Own Codebase

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

Try Supermodel Free