UNPKG

newrelic-react-native-agent

Version:

A New Relic Mobile Agent for React Native

29 lines (25 loc) 1.29 kB
/** * Copyright (c) 2022-present New Relic Corporation. All rights reserved. * SPDX-License-Identifier: Apache-2.0 */ import Validator from '../validator'; describe('Validator', () => { it('should have attributes for different validations', () => { expect(Validator.isString).toEqual('isString'); expect(Validator.isBool).toEqual('isBool'); expect(Validator.isNumber).toEqual('isNumber'); expect(Validator.isObject).toEqual('isObject'); expect(Validator.notEmptyString).toEqual('notEmptyString'); expect(Validator.hasValidAttributes).toEqual('hasValidAttributes'); }); it('should be able to validate a rule', () => { const validateThis = new Validator(); expect(validateThis.validate(123, ['isNumber'], 'my message')).toEqual(true); expect(validateThis.validate(123, ['isString'], 'my message')).toEqual(false); expect(validateThis.validate(true, ['isBool'], 'my message')).toEqual(true); expect(validateThis.validate({}, ['isObject'], 'my message')).toEqual(true); expect(validateThis.validate([], ['isObject'], 'my message')).toEqual(false); expect(validateThis.validate('', ['notEmptyString'], 'my message')).toEqual(false); expect(validateThis.validate('test', ['notEmptyString'], 'my message')).toEqual(true); }); });