mirror of
https://github.com/CorentinTh/it-tools.git
synced 2025-05-05 13:57:10 -04:00
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
![]() |
import { describe, expect, it } from 'vitest';
|
||
|
import { isFalsyOrHasThrown } from './validation';
|
||
|
|
||
|
describe('useValidation', () => {
|
||
|
describe('isFalsyOrHasThrown', () => {
|
||
|
it('should return true if the callback return nil, false or throw', () => {
|
||
|
expect(isFalsyOrHasThrown(() => false)).toBe(true);
|
||
|
expect(isFalsyOrHasThrown(() => null)).toBe(true);
|
||
|
expect(isFalsyOrHasThrown(() => undefined)).toBe(true);
|
||
|
expect(isFalsyOrHasThrown(() => {})).toBe(true);
|
||
|
expect(
|
||
|
isFalsyOrHasThrown(() => {
|
||
|
throw new Error('message');
|
||
|
}),
|
||
|
).toBe(true);
|
||
|
});
|
||
|
|
||
|
it('should return true for any truthy values and empty string and 0 values', () => {
|
||
|
expect(isFalsyOrHasThrown(() => true)).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => 'string')).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => 1)).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => 0)).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => '')).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => [])).toBe(false);
|
||
|
expect(isFalsyOrHasThrown(() => ({}))).toBe(false);
|
||
|
});
|
||
|
});
|
||
|
});
|