Home / Function/ testSchemasResolver() — drizzle-orm Function Reference

testSchemasResolver() — drizzle-orm Function Reference

Architecture documentation for the testSchemasResolver() function in schemaDiffer.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  eeae166f_7245_697c_8a12_79452338852b["testSchemasResolver()"]
  fb6b4a65_030b_ce6b_df0d_2be21adcd2b3["schemaDiffer.ts"]
  eeae166f_7245_697c_8a12_79452338852b -->|defined in| fb6b4a65_030b_ce6b_df0d_2be21adcd2b3
  e15327fc_6c47_0a22_5e26_e5f3a2056272["diffTestSchemasPush()"]
  e15327fc_6c47_0a22_5e26_e5f3a2056272 -->|calls| eeae166f_7245_697c_8a12_79452338852b
  a9b90700_95b1_2733_ec44_94b71b29bd74["applyPgDiffs()"]
  a9b90700_95b1_2733_ec44_94b71b29bd74 -->|calls| eeae166f_7245_697c_8a12_79452338852b
  c00494ea_6230_22b6_9b91_d37781a8ac08["diffTestSchemas()"]
  c00494ea_6230_22b6_9b91_d37781a8ac08 -->|calls| eeae166f_7245_697c_8a12_79452338852b
  099eb17b_7dab_5785_cbf8_b861b392a028["introspectPgToFile()"]
  099eb17b_7dab_5785_cbf8_b861b392a028 -->|calls| eeae166f_7245_697c_8a12_79452338852b
  style eeae166f_7245_697c_8a12_79452338852b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-kit/tests/schemaDiffer.ts lines 114–170

	(renames: Set<string>) => async (input: ResolverInput<Named>): Promise<ResolverOutput<Named>> => {
		try {
			if (
				input.created.length === 0
				|| input.deleted.length === 0
				|| renames.size === 0
			) {
				return {
					created: input.created,
					renamed: [],
					deleted: input.deleted,
				};
			}

			let createdSchemas = [...input.created];
			let deletedSchemas = [...input.deleted];

			const result: {
				created: Named[];
				renamed: { from: Named; to: Named }[];
				deleted: Named[];
			} = { created: [], renamed: [], deleted: [] };

			for (let rename of renames) {
				const [from, to] = rename.split('->');

				const idxFrom = deletedSchemas.findIndex((it) => {
					return it.name === from;
				});

				if (idxFrom >= 0) {
					const idxTo = createdSchemas.findIndex((it) => {
						return it.name === to;
					});

					result.renamed.push({
						from: deletedSchemas[idxFrom],
						to: createdSchemas[idxTo],
					});

					delete createdSchemas[idxTo];
					delete deletedSchemas[idxFrom];

					createdSchemas = createdSchemas.filter(Boolean);
					deletedSchemas = deletedSchemas.filter(Boolean);
				}
			}

			result.created = createdSchemas;
			result.deleted = deletedSchemas;

			return result;
		} catch (e) {
			console.error(e);
			throw e;
		}
	};

Domain

Subdomains

Frequently Asked Questions

What does testSchemasResolver() do?
testSchemasResolver() is a function in the drizzle-orm codebase, defined in drizzle-kit/tests/schemaDiffer.ts.
Where is testSchemasResolver() defined?
testSchemasResolver() is defined in drizzle-kit/tests/schemaDiffer.ts at line 114.
What calls testSchemasResolver()?
testSchemasResolver() is called by 4 function(s): applyPgDiffs, diffTestSchemas, diffTestSchemasPush, introspectPgToFile.

Analyze Your Own Codebase

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

Try Supermodel Free