Files

58 lines
1.8 KiB
TypeScript

import {expect} from 'chai'
import {checkExistence} from '../src/main'
import {folderIsInsensitive} from '../src/utils'
function setEnv(name: string, value: string): void {
process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] = value
}
describe('Case sensitivity', function () {
it('should return true for existing file', async function () {
setEnv('ignore_case', 'false')
const res = await checkExistence('test/resource/test.txt')
expect(res).to.equal(true)
})
it('should return false for uppercase file', async function () {
setEnv('ignore_case', 'false')
const res = await checkExistence('test/resource/TEST.txt')
if (folderIsInsensitive()) {
expect(res).to.equal(true)
} else {
expect(res).to.equal(false)
}
})
it('should return true for uppercase file with ignore_case true', async function () {
setEnv('ignore_case', 'true')
const res = await checkExistence('test/resource/TEST.txt')
expect(res).to.equal(true)
})
it('should return true for mIxEd case file with ignore_case true', async function () {
setEnv('ignore_case', 'true')
const res = await checkExistence('test/resource/TeSt.txt')
expect(res).to.equal(true)
})
})
describe('Glob patterns', function () {
it('should return true for **/test.txt', async function () {
setEnv('ignore_case', 'false')
const res = await checkExistence('test/**/test.txt')
expect(res).to.equal(true)
})
it('should return false for *.txt', async function () {
setEnv('ignore_case', 'false')
const res = await checkExistence('test/*.txt')
expect(res).to.equal(false)
})
it('should return true for **/*.txt', async function () {
setEnv('ignore_case', 'false')
const res = await checkExistence('test/**/*.txt')
expect(res).to.equal(true)
})
})