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.
		
		
		
		
		
			
		
			
				
					49 lines
				
				857 B
			
		
		
			
		
	
	
					49 lines
				
				857 B
			| 
								 
											3 years ago
										 
									 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var test = require('tape');
							 | 
						||
| 
								 | 
							
								var camelize = require('../');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var obj = {
							 | 
						||
| 
								 | 
							
									fee_fie_foe: 'fum',
							 | 
						||
| 
								 | 
							
									beep_boop: [
							 | 
						||
| 
								 | 
							
										{ 'abc.xyz': 'mno' },
							 | 
						||
| 
								 | 
							
										{ 'foo-bar': 'baz' }
							 | 
						||
| 
								 | 
							
									]
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('camelize a nested object', function (t) {
							 | 
						||
| 
								 | 
							
									t.plan(1);
							 | 
						||
| 
								 | 
							
									var res = camelize(obj);
							 | 
						||
| 
								 | 
							
									t.deepEqual(res, {
							 | 
						||
| 
								 | 
							
										feeFieFoe: 'fum',
							 | 
						||
| 
								 | 
							
										beepBoop: [
							 | 
						||
| 
								 | 
							
											{ abcXyz: 'mno' },
							 | 
						||
| 
								 | 
							
											{ fooBar: 'baz' }
							 | 
						||
| 
								 | 
							
										]
							 | 
						||
| 
								 | 
							
									});
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('string', function (t) {
							 | 
						||
| 
								 | 
							
									t.plan(1);
							 | 
						||
| 
								 | 
							
									t.equal(camelize('one_two'), 'oneTwo');
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('date', function (t) {
							 | 
						||
| 
								 | 
							
									t.plan(1);
							 | 
						||
| 
								 | 
							
									var d = new Date();
							 | 
						||
| 
								 | 
							
									t.equal(camelize(d), d);
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('regex', function (t) {
							 | 
						||
| 
								 | 
							
									t.plan(1);
							 | 
						||
| 
								 | 
							
									var r = /1234/;
							 | 
						||
| 
								 | 
							
									t.equal(camelize(r), r);
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('only camelize strings that are the root value', function (t) {
							 | 
						||
| 
								 | 
							
									t.plan(2);
							 | 
						||
| 
								 | 
							
									t.equal(camelize('foo-bar'), 'fooBar');
							 | 
						||
| 
								 | 
							
									var res = camelize({ 'foo-bar': 'baz-foo' });
							 | 
						||
| 
								 | 
							
									t.deepEqual(res, { fooBar: 'baz-foo' });
							 | 
						||
| 
								 | 
							
								});
							 |