isValidNumberForRegion.test.js 1.1 KB

12345678910111213141516171819202122232425262728
  1. import metadata from '../../metadata.min.json' assert { type: 'json' }
  2. import isValidNumberForRegionCustom from './isValidNumberForRegion.js'
  3. import _isValidNumberForRegion from './isValidNumberForRegion_.js'
  4. function isValidNumberForRegion(...parameters) {
  5. parameters.push(metadata)
  6. return isValidNumberForRegionCustom.apply(this, parameters)
  7. }
  8. describe('isValidNumberForRegion', () => {
  9. it('should detect if is valid number for region', () => {
  10. isValidNumberForRegion('07624369230', 'GB').should.equal(false)
  11. isValidNumberForRegion('07624369230', 'IM').should.equal(true)
  12. })
  13. it('should validate arguments', () => {
  14. expect(() => isValidNumberForRegion({ phone: '7624369230', country: 'GB' })).to.throw('number must be a string')
  15. expect(() => isValidNumberForRegion('7624369230')).to.throw('country must be a string')
  16. })
  17. it('should work in edge cases', () => {
  18. // Not a "viable" phone number.
  19. isValidNumberForRegion('7', 'GB').should.equal(false)
  20. // `options` argument `if/else` coverage.
  21. _isValidNumberForRegion('07624369230', 'GB', {}, metadata).should.equal(false)
  22. })
  23. })