Files
drizzle-team--drizzle-orm/drizzle-orm/tests/relation.test.ts
T
2026-07-13 12:10:05 +08:00

39 lines
936 B
TypeScript

import { expect, test } from 'vitest';
import { pgSchema, pgTable } from '~/pg-core/index.ts';
import { createTableRelationsHelpers, extractTablesRelationalConfig } from '~/relations.ts';
test('tables with same name in different schemas', () => {
const folder = pgSchema('folder');
const schema = {
folder: {
usersInFolder: folder.table('users', {}),
},
public: {
users: pgTable('users', {}),
},
};
const relationalSchema = {
...Object.fromEntries(
Object.entries(schema)
.flatMap(([key, val]) => {
// have unique keys across schemas
const mappedTableEntries = Object.entries(val).map((tableEntry) => {
return [`__${key}__.${tableEntry[0]}`, tableEntry[1]];
});
return mappedTableEntries;
}),
),
};
const relationsConfig = extractTablesRelationalConfig(
relationalSchema,
createTableRelationsHelpers,
);
expect(Object.keys(relationsConfig)).toHaveLength(2);
});