All files / src/validation numberValidation.spec.ts

100% Statements 60/60
100% Branches 14/14
100% Functions 0/0
100% Lines 60/60

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 651x   1x   1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
import { describe, expect, test } from 'vitest';
 
import { minValue, maxValue, valueIsEqualTo } from './numberValidation';
 
describe('Number Validation', () => {
  describe('minValue', () => {
    test('on null', () => {
      const num: any = null;
      const validator = minValue(5);
      expect(validator(num).isValid).toBeFalsy();
    });
    test('with low value', () => {
      const num = 1;
      const validator = minValue(5);
      expect(validator(num).isValid).toBeFalsy();
    });
    test('with high value', () => {
      const num = 20;
      const validator = minValue(5);
      expect(validator(num).isValid).toBeTruthy();
    });
  });
 
  describe('maxValue', () => {
    test('on null', () => {
      const num: any = null;
      const validator = maxValue(5);
      expect(validator(num).isValid).toBeTruthy();
    });
    test('with low value', () => {
      const num = 1;
      const validator = maxValue(5);
      expect(validator(num).isValid).toBeTruthy();
    });
    test('with high value', () => {
      const num = 20;
      const validator = maxValue(5);
      expect(validator(num).isValid).toBeFalsy();
    });
  });
 
  describe('valueIsEqualTo', () => {
    test('on null', () => {
      const num: any = null;
      const validator = valueIsEqualTo(5, 12, 15);
      expect(validator(num).isValid).toBeFalsy();
    });
    test('with value not in list', () => {
      const num = 11;
      const validator = valueIsEqualTo(5, 12, 15);
      expect(validator(num).isValid).toBeFalsy();
    });
    test('with value in list', () => {
      const num = 12;
      const validator = valueIsEqualTo(5, 12, 15);
      expect(validator(num).isValid).toBeTruthy();
    });
    test('with no options', () => {
      const num = 12;
      const validator = valueIsEqualTo();
      expect(validator(num).isValid).toBeFalsy();
    });
  });
});