mirror of
https://github.com/koel/koel
synced 2024-11-10 06:34:14 +00:00
feat(test): add helper util tests
This commit is contained in:
parent
f1c2febd38
commit
6f0d6e8abc
2 changed files with 36 additions and 1 deletions
35
resources/assets/js/utils/helpers.spec.ts
Normal file
35
resources/assets/js/utils/helpers.spec.ts
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
import UnitTestCase from '@/__tests__/UnitTestCase'
|
||||||
|
import { expect, it, vi } from 'vitest'
|
||||||
|
import { arrayify, limitBy, use } from './helpers'
|
||||||
|
|
||||||
|
new class extends UnitTestCase {
|
||||||
|
protected test () {
|
||||||
|
it('use() triggers a closure with a defined value', () => {
|
||||||
|
const mock = vi.fn()
|
||||||
|
use('foo', mock)
|
||||||
|
expect(mock).toHaveBeenCalledWith('foo')
|
||||||
|
})
|
||||||
|
|
||||||
|
it('use() does not trigger a closure with an undefined value', () => {
|
||||||
|
const mock = vi.fn()
|
||||||
|
use(undefined, mock)
|
||||||
|
expect(mock).not.toHaveBeenCalled()
|
||||||
|
})
|
||||||
|
|
||||||
|
it.each([
|
||||||
|
['foo', ['foo']],
|
||||||
|
[['foo', 'bar'], ['foo', 'bar']]
|
||||||
|
])('turns the parameter into an array', (input, output) => expect(arrayify(input)).toEqual(output))
|
||||||
|
|
||||||
|
it.each([
|
||||||
|
[2, 0, ['a', 'b']],
|
||||||
|
[2, 1, ['b', 'c']],
|
||||||
|
[1, 0, ['a']],
|
||||||
|
[1, 2, ['c']],
|
||||||
|
[0, 0, []],
|
||||||
|
[0, 1, []]
|
||||||
|
])('takes %d elements from %d position', (count, position, result) => {
|
||||||
|
expect(limitBy(['a', 'b', 'c', 'd'], count, position)).toEqual(result)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
|
@ -12,4 +12,4 @@ export const arrayify = <T> (maybeArray: T | Array<T>) => ([] as Array<T>).conca
|
||||||
export const noop = () => {
|
export const noop = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
export const limitBy = <T> (arr: T[], n: number, offset: number = 0): T[] => arr.slice(offset, offset + n)
|
export const limitBy = <T> (arr: T[], count: number, offset: number = 0): T[] => arr.slice(offset, offset + count)
|
||||||
|
|
Loading…
Reference in a new issue