Skip to content

Commit

Permalink
fix: remove factories option from config
Browse files Browse the repository at this point in the history
  • Loading branch information
jorgebodega committed Dec 21, 2021
1 parent 7aa66a7 commit 870a23d
Show file tree
Hide file tree
Showing 5 changed files with 35 additions and 10 deletions.
4 changes: 1 addition & 3 deletions src/connection/getConnectionOptions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,10 @@ export async function getConnectionOptions(): Promise<ConnectionOptions> {

const options = (await connectionReader.get(connection)) as ConnectionOptions

const factoriesFromEnv = process.env.TYPEORM_SEEDING_FACTORIES
const seedersFromEnv = process.env.TYPEORM_SEEDING_SEEDS

return {
...options,
factories: factoriesFromEnv ? [factoriesFromEnv] : options.factories || [],
seeds: seedersFromEnv ? [seedersFromEnv] : options.seeds || [],
seeders: seedersFromEnv ? [seedersFromEnv] : options.seeders || [],
}
}
3 changes: 1 addition & 2 deletions src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ import type { ConnectionOptions as TypeORMConnectionOptions } from 'typeorm'
export type ClassConstructor<T> = new () => T

export type ConnectionOptions = TypeORMConnectionOptions & {
factories: string[]
seeds: string[]
seeders: string[]
}

export type ConnectionConfiguration = {
Expand Down
2 changes: 1 addition & 1 deletion src/useSeeders.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export async function useSeeders(
configureConnection(customOptions)
const option = await getConnectionOptions()

let seederFiles = calculateFilePaths(option.seeds)
let seederFiles = calculateFilePaths(option.seeders)
if (seeders) {
const seedersDesired = calculateFilePaths(seeders)
seederFiles = seederFiles.filter((factoryFile) => seedersDesired.includes(factoryFile))
Expand Down
6 changes: 2 additions & 4 deletions test/jest-setup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,13 @@ jest.mock('../ormconfig.ts', () => [
type: 'sqlite',
database: ':memory:',
entities: ['test/entities/**/*.entity.ts'],
factories: ['test/factories/**/*.factory.ts'],
seeds: ['test/seeders/**/*.seed.ts'],
seeders: ['test/seeders/**/*.seeder.ts'],
},
{
name: 'memory',
type: 'sqlite',
database: ':memory:',
entities: ['test/entities/**/*.entity.ts'],
factories: ['test/factories/**/*.factory.ts'],
seeds: ['test/seeders/**/*.seed.ts'],
seeders: ['test/seeders/**/*.seeder.ts'],
},
])
30 changes: 30 additions & 0 deletions test/seeder.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import { Connection } from 'typeorm'
import { configureConnection, fetchConnection, Seeder } from '../src'
import { User } from './entities/User.entity'
import { UserSeeder } from './seeders/User.seeder'

describe(Seeder, () => {
let connection: Connection
const userSeeder = new UserSeeder()

beforeAll(async () => {
configureConnection({ connection: 'memory' })
connection = await fetchConnection()

await connection.synchronize()
})

afterAll(async () => {
await connection.dropDatabase()
await connection.close()
})

describe(Seeder.prototype.run, () => {
test('Should seed users', async () => {
await userSeeder.run()

const totalItems = await connection.createEntityManager().count(User)
expect(totalItems).toBe(10)
})
})
})

0 comments on commit 870a23d

Please sign in to comment.