1
0
Fork 0
mirror of https://code.forgejo.org/actions/checkout.git synced 2024-12-23 04:05:59 +01:00

change: remove path.sep, add unit tests, dist

Remove path.sep during comparison with repositoryPath
(did not take in account root folders)
Updated and added more unit tests
Updated dist/index.js
This commit is contained in:
Marco Accorinti 2023-09-20 21:02:10 +02:00
parent 21ffcee746
commit 8461fff5eb
3 changed files with 23 additions and 3 deletions

View file

@ -825,7 +825,6 @@ async function setup(testName: string): Promise<void> {
workflowOrganizationId: 123456,
setSafeDirectory: true,
githubServerUrl: githubServerUrl,
workingDirectory: undefined
}
}

View file

@ -144,4 +144,25 @@ describe('input-helper tests', () => {
const settings: IGitSourceSettings = await inputHelper.getInputs()
expect(settings.workflowOrganizationId).toBe(123456)
})
it('sets a different working directory', async() => {
inputs['working-directory'] = '/home/user/test'
inputs['path'] = 'path/to/repo'
const settings: IGitSourceSettings = await inputHelper.getInputs()
expect(settings.repositoryPath).toBe(path.resolve('/home/user/test/path/to/repo'))
})
it('sets a working directory on root', async() => {
inputs['working-directory'] = '/'
inputs['path'] = 'path/to/repo'
const settings: IGitSourceSettings = await inputHelper.getInputs()
expect(settings.repositoryPath).toBe(path.resolve('/path/to/repo'))
})
it('sets a working directory on root and repository path is set to empty', async() => {
inputs['working-directory'] = '/'
inputs['path'] = ''
const settings: IGitSourceSettings = await inputHelper.getInputs()
expect(settings.repositoryPath).toBe(path.resolve('/'))
})
})

View file

@ -43,11 +43,11 @@ export async function getInputs(): Promise<IGitSourceSettings> {
)
if (
!(result.repositoryPath + path.sep).startsWith(
workingDirectory + path.sep
workingDirectory
)
) {
throw new Error(
`Repository path '${result.repositoryPath}' is not under '${workingDirectory}'`
`Repository path '${result.repositoryPath + path.sep}' is not under '${workingDirectory}'`
)
}