| 
									
										
										
										
											2019-09-26 16:27:26 +02:00
										 |  |  | /* global describe expect it */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const slugs = require('./slugs'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | describe('dasherize', () => { | 
					
						
							|  |  |  |   const { dasherize } = slugs; | 
					
						
							|  |  |  |   it('returns a string', () => { | 
					
						
							|  |  |  |     expect(dasherize('')).toBe(''); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('converts characters to lower case', () => { | 
					
						
							|  |  |  |     expect(dasherize('UPPERCASE')).toBe('uppercase'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('converts spaces to dashes', () => { | 
					
						
							| 
									
										
										
										
											2019-09-26 18:08:17 +02:00
										 |  |  |     expect(dasherize('the space  between')).toBe('the-space--between'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-07-03 16:58:53 +02:00
										 |  |  |   it('converts dots to dashes', () => { | 
					
						
							|  |  |  |     expect(dasherize('the..dots.. between')).toBe('the--dots---between'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-26 18:08:17 +02:00
										 |  |  |   it('trims off surrounding whitespace', () => { | 
					
						
							|  |  |  |     expect(dasherize('  the space  between    ')).toBe('the-space--between'); | 
					
						
							| 
									
										
										
										
											2019-09-26 16:27:26 +02:00
										 |  |  |   }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-07-03 16:58:53 +02:00
										 |  |  |   it('removes everything except letters, numbers and -', () => { | 
					
						
							|  |  |  |     expect(dasherize('1a!"£$%^*()_+=-.b2')).toBe('1a--b2'); | 
					
						
							| 
									
										
										
										
											2019-09-26 16:27:26 +02:00
										 |  |  |   }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | describe('nameify', () => { | 
					
						
							|  |  |  |   const { nameify } = slugs; | 
					
						
							|  |  |  |   it('returns a string', () => { | 
					
						
							|  |  |  |     expect(nameify('')).toBe(''); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('removes everything except letters, numbers and spaces', () => { | 
					
						
							|  |  |  |     expect(nameify('1A !"£$%^*()_+=-.b  2')).toBe('1A b  2'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | describe('unDasherize', () => { | 
					
						
							|  |  |  |   const { unDasherize } = slugs; | 
					
						
							|  |  |  |   it('returns a string', () => { | 
					
						
							|  |  |  |     expect(unDasherize('')).toBe(''); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('converts dashes to spaces', () => { | 
					
						
							|  |  |  |     expect(unDasherize('the-space--between')).toBe('the space  between'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('removes everything except letters, numbers and spaces', () => { | 
					
						
							|  |  |  |     expect(unDasherize('1A !"£$%^*()_+=-.b  2')).toBe('1A  b  2'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  |   it('trims off surrounding whitespace', () => { | 
					
						
							|  |  |  |     expect(unDasherize('--the-space--between----')).toBe('the space  between'); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | }); |