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.
		
		
		
		
		
			
		
			
				
					48 lines
				
				2.1 KiB
			
		
		
			
		
	
	
					48 lines
				
				2.1 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								import findPhoneNumbersInText from './findPhoneNumbersInText.js'
							 | 
						||
| 
								 | 
							
								import metadata from '../metadata.min.json' assert { type: 'json' }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								describe('findPhoneNumbersInText', () => {
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (with default country)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', 'US', metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (with default country in options)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', { defaultCountry: 'US' }, metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (with default country and options)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', 'US', {}, metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (without default country, with options)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', undefined, {}, metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (with default country, without options)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', 'US', undefined, metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (with empty default country)', () => {
							 | 
						||
| 
								 | 
							
										findPhoneNumbersInText('+7 (800) 555-35-35', undefined, metadata)[0].number.number.should.equal('+78005553535')
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text', () => {
							 | 
						||
| 
								 | 
							
										const NUMBERS = ['+78005553535', '+12133734253']
							 | 
						||
| 
								 | 
							
										const results = findPhoneNumbersInText('The number is +7 (800) 555-35-35 and not (213) 373-4253 as written in the document.', metadata)
							 | 
						||
| 
								 | 
							
										let i = 0
							 | 
						||
| 
								 | 
							
										while (i < results.length) {
							 | 
						||
| 
								 | 
							
											results[i].number.number.should.equal(NUMBERS[i])
							 | 
						||
| 
								 | 
							
											i++
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									it('should find phone numbers in text (default country calling code)', () => {
							 | 
						||
| 
								 | 
							
										const NUMBERS = ['+870773111632']
							 | 
						||
| 
								 | 
							
										const results = findPhoneNumbersInText('The number is 773 111 632', { defaultCallingCode: '870' }, metadata)
							 | 
						||
| 
								 | 
							
										let i = 0
							 | 
						||
| 
								 | 
							
										while (i < results.length) {
							 | 
						||
| 
								 | 
							
											results[i].number.number.should.equal(NUMBERS[i])
							 | 
						||
| 
								 | 
							
											i++
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								})
							 |