mirror of
https://github.com/pnpm/pnpm.git
synced 2026-01-06 05:58:20 -05:00
38 lines
1.3 KiB
TypeScript
38 lines
1.3 KiB
TypeScript
import path from 'path'
|
|
import { preparePackage } from '@pnpm/prepare-package'
|
|
import { tempDir } from '@pnpm/prepare'
|
|
import { createTestIpcServer } from '@pnpm/test-ipc-server'
|
|
import { fixtures } from '@pnpm/test-fixtures'
|
|
|
|
const f = fixtures(__dirname)
|
|
|
|
test('prepare package runs the prepublish script', async () => {
|
|
const tmp = tempDir()
|
|
await using server = await createTestIpcServer(path.join(tmp, 'test.sock'))
|
|
f.copy('has-prepublish-script', tmp)
|
|
await preparePackage({ rawConfig: {} }, tmp, '')
|
|
expect(server.getLines()).toStrictEqual([
|
|
'prepublish',
|
|
])
|
|
})
|
|
|
|
test('prepare package does not run the prepublish script if the main file is present', async () => {
|
|
const tmp = tempDir()
|
|
await using server = await createTestIpcServer(path.join(tmp, 'test.sock'))
|
|
f.copy('has-prepublish-script-and-main-file', tmp)
|
|
await preparePackage({ rawConfig: {} }, tmp, '')
|
|
expect(server.getLines()).toStrictEqual([
|
|
'prepublish',
|
|
])
|
|
})
|
|
|
|
test('prepare package runs the prepublish script in the sub folder if pkgDir is present', async () => {
|
|
const tmp = tempDir()
|
|
await using server = await createTestIpcServer(path.join(tmp, 'test.sock'))
|
|
f.copy('has-prepublish-script-in-workspace', tmp)
|
|
await preparePackage({ rawConfig: {} }, tmp, 'packages/foo')
|
|
expect(server.getLines()).toStrictEqual([
|
|
'prepublish',
|
|
])
|
|
})
|