mirror of
https://github.com/pnpm/pnpm.git
synced 2026-01-03 04:28:36 -05:00
40 lines
956 B
TypeScript
40 lines
956 B
TypeScript
import tempy from 'tempy'
|
|
import execa from 'execa'
|
|
import fs from 'fs'
|
|
import path from 'path'
|
|
import { getCurrentBranch, isGitRepo, isWorkingTreeClean } from '@pnpm/git-utils'
|
|
|
|
test('isGitRepo', async () => {
|
|
const tempDir = tempy.directory()
|
|
process.chdir(tempDir)
|
|
|
|
await expect(isGitRepo()).resolves.toBe(false)
|
|
|
|
await execa('git', ['init'])
|
|
|
|
await expect(isGitRepo()).resolves.toBe(true)
|
|
})
|
|
|
|
test('getCurrentBranch', async () => {
|
|
const tempDir = tempy.directory()
|
|
process.chdir(tempDir)
|
|
|
|
await execa('git', ['init'])
|
|
await execa('git', ['checkout', '-b', 'foo'])
|
|
|
|
await expect(getCurrentBranch()).resolves.toBe('foo')
|
|
})
|
|
|
|
test('isWorkingTreeClean', async () => {
|
|
const tempDir = tempy.directory()
|
|
process.chdir(tempDir)
|
|
|
|
await execa('git', ['init'])
|
|
|
|
await expect(isWorkingTreeClean()).resolves.toBe(true)
|
|
|
|
fs.writeFileSync(path.join(tempDir, 'foo'), 'foo')
|
|
|
|
await expect(isWorkingTreeClean()).resolves.toBe(false)
|
|
})
|