You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					28 lines
				
				1.1 KiB
			
		
		
			
		
	
	
					28 lines
				
				1.1 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								import metadata from '../metadata.min.json' assert { type: 'json' }
							 | 
						||
| 
								 | 
							
								import isValidNumberForRegionCustom from './isValidNumberForRegion.js'
							 | 
						||
| 
								 | 
							
								import _isValidNumberForRegion from './isValidNumberForRegion_.js'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								function isValidNumberForRegion(...parameters) {
							 | 
						||
| 
								 | 
							
									parameters.push(metadata)
							 | 
						||
| 
								 | 
							
									return isValidNumberForRegionCustom.apply(this, parameters)
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								describe('isValidNumberForRegion', () => {
							 | 
						||
| 
								 | 
							
									it('should detect if is valid number for region', () => {
							 | 
						||
| 
								 | 
							
										isValidNumberForRegion('07624369230', 'GB').should.equal(false)
							 | 
						||
| 
								 | 
							
										isValidNumberForRegion('07624369230', 'IM').should.equal(true)
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should validate arguments', () => {
							 | 
						||
| 
								 | 
							
										expect(() => isValidNumberForRegion({ phone: '7624369230', country: 'GB' })).to.throw('number must be a string')
							 | 
						||
| 
								 | 
							
										expect(() => isValidNumberForRegion('7624369230')).to.throw('country must be a string')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should work in edge cases', () => {
							 | 
						||
| 
								 | 
							
										// Not a "viable" phone number.
							 | 
						||
| 
								 | 
							
										isValidNumberForRegion('7', 'GB').should.equal(false)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										// `options` argument `if/else` coverage.
							 | 
						||
| 
								 | 
							
										_isValidNumberForRegion('07624369230', 'GB', {}, metadata).should.equal(false)
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								})
							 |