chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
import { expect } from 'vitest'
|
||||
|
||||
import { sandboxTest } from '../../setup.js'
|
||||
import {
|
||||
cleanupBaseDir,
|
||||
createBaseDir,
|
||||
createRepoWithCommit,
|
||||
} from './helpers.js'
|
||||
|
||||
sandboxTest('git restore --staged unstages changes', async ({ sandbox }) => {
|
||||
const baseDir = await createBaseDir(sandbox)
|
||||
|
||||
try {
|
||||
const repoPath = await createRepoWithCommit(sandbox, baseDir)
|
||||
await sandbox.files.write(`${repoPath}/README.md`, 'changed\n')
|
||||
await sandbox.git.add(repoPath, { files: ['README.md'] })
|
||||
|
||||
const status = await sandbox.git.status(repoPath)
|
||||
expect(status.hasStaged).toBe(true)
|
||||
|
||||
await sandbox.git.restore(repoPath, {
|
||||
paths: ['README.md'],
|
||||
staged: true,
|
||||
worktree: false,
|
||||
})
|
||||
|
||||
const statusAfter = await sandbox.git.status(repoPath)
|
||||
expect(statusAfter.hasStaged).toBe(false)
|
||||
expect(statusAfter.hasChanges).toBe(true)
|
||||
} finally {
|
||||
await cleanupBaseDir(sandbox, baseDir)
|
||||
}
|
||||
})
|
||||
|
||||
sandboxTest(
|
||||
'git restore discards working tree changes',
|
||||
async ({ sandbox }) => {
|
||||
const baseDir = await createBaseDir(sandbox)
|
||||
|
||||
try {
|
||||
const repoPath = await createRepoWithCommit(sandbox, baseDir)
|
||||
await sandbox.files.write(`${repoPath}/README.md`, 'changed\n')
|
||||
|
||||
const status = await sandbox.git.status(repoPath)
|
||||
expect(status.isClean).toBe(false)
|
||||
|
||||
await sandbox.git.restore(repoPath, { paths: ['README.md'] })
|
||||
|
||||
const statusAfter = await sandbox.git.status(repoPath)
|
||||
expect(statusAfter.isClean).toBe(true)
|
||||
|
||||
const contents = await sandbox.files.read(`${repoPath}/README.md`)
|
||||
expect(contents).toBe('hello\n')
|
||||
} finally {
|
||||
await cleanupBaseDir(sandbox, baseDir)
|
||||
}
|
||||
}
|
||||
)
|
||||
Reference in New Issue
Block a user