Initial commit
This commit is contained in:
		
							
								
								
									
										16
									
								
								node_modules/rc/test/ini.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								node_modules/rc/test/ini.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
var cc =require('../lib/utils')
 | 
			
		||||
var INI = require('ini')
 | 
			
		||||
var assert = require('assert')
 | 
			
		||||
 | 
			
		||||
function test(obj) {
 | 
			
		||||
 | 
			
		||||
  var _json, _ini
 | 
			
		||||
  var json = cc.parse (_json = JSON.stringify(obj))
 | 
			
		||||
  var ini = cc.parse (_ini = INI.stringify(obj))
 | 
			
		||||
  console.log(_ini, _json)
 | 
			
		||||
  assert.deepEqual(json, ini)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
test({hello: true})
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										50
									
								
								node_modules/rc/test/nested-env-vars.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								node_modules/rc/test/nested-env-vars.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,50 @@
 | 
			
		||||
 | 
			
		||||
var seed = Math.random();
 | 
			
		||||
var n = 'rc'+ seed;
 | 
			
		||||
var N = 'RC'+ seed;
 | 
			
		||||
var assert = require('assert')
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// Basic usage
 | 
			
		||||
process.env[n+'_someOpt__a'] = 42
 | 
			
		||||
process.env[n+'_someOpt__x__'] = 99
 | 
			
		||||
process.env[n+'_someOpt__a__b'] = 186
 | 
			
		||||
process.env[n+'_someOpt__a__b__c'] = 243
 | 
			
		||||
process.env[n+'_someOpt__x__y'] = 1862
 | 
			
		||||
process.env[n+'_someOpt__z'] = 186577
 | 
			
		||||
 | 
			
		||||
// Should ignore empty strings from orphaned '__'
 | 
			
		||||
process.env[n+'_someOpt__z__x__'] = 18629
 | 
			
		||||
process.env[n+'_someOpt__w__w__'] = 18629
 | 
			
		||||
 | 
			
		||||
// Leading '__' should ignore everything up to 'z'
 | 
			
		||||
process.env[n+'___z__i__'] = 9999
 | 
			
		||||
 | 
			
		||||
// should ignore case for config name section.
 | 
			
		||||
process.env[N+'_test_upperCase'] = 187
 | 
			
		||||
 | 
			
		||||
function testPrefix(prefix) {
 | 
			
		||||
	var config = require('../')(prefix, {
 | 
			
		||||
	  option: true
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	console.log('\n\n------ nested-env-vars ------\n',{prefix: prefix}, '\n', config);
 | 
			
		||||
 | 
			
		||||
	assert.equal(config.option, true)
 | 
			
		||||
	assert.equal(config.someOpt.a, 42)
 | 
			
		||||
	assert.equal(config.someOpt.x, 99)
 | 
			
		||||
	// Should not override `a` once it's been set
 | 
			
		||||
	assert.equal(config.someOpt.a/*.b*/, 42)
 | 
			
		||||
	// Should not override `x` once it's been set
 | 
			
		||||
	assert.equal(config.someOpt.x/*.y*/, 99)
 | 
			
		||||
	assert.equal(config.someOpt.z, 186577)
 | 
			
		||||
	// Should not override `z` once it's been set
 | 
			
		||||
	assert.equal(config.someOpt.z/*.x*/, 186577)
 | 
			
		||||
	assert.equal(config.someOpt.w.w, 18629)
 | 
			
		||||
	assert.equal(config.z.i, 9999)
 | 
			
		||||
 | 
			
		||||
	assert.equal(config.test_upperCase, 187)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
testPrefix(n);
 | 
			
		||||
testPrefix(N);
 | 
			
		||||
							
								
								
									
										59
									
								
								node_modules/rc/test/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								node_modules/rc/test/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
 | 
			
		||||
var n = 'rc'+Math.random()
 | 
			
		||||
var assert = require('assert')
 | 
			
		||||
 | 
			
		||||
process.env[n+'_envOption'] = 42
 | 
			
		||||
 | 
			
		||||
var config = require('../')(n, {
 | 
			
		||||
  option: true
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
console.log(config)
 | 
			
		||||
 | 
			
		||||
assert.equal(config.option, true)
 | 
			
		||||
assert.equal(config.envOption, 42)
 | 
			
		||||
 | 
			
		||||
var customArgv = require('../')(n, {
 | 
			
		||||
  option: true
 | 
			
		||||
}, { // nopt-like argv
 | 
			
		||||
  option: false,
 | 
			
		||||
  envOption: 24,
 | 
			
		||||
  argv: {
 | 
			
		||||
    remain: [],
 | 
			
		||||
    cooked: ['--no-option', '--envOption', '24'],
 | 
			
		||||
    original: ['--no-option', '--envOption=24']
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
console.log(customArgv)
 | 
			
		||||
 | 
			
		||||
assert.equal(customArgv.option, false)
 | 
			
		||||
assert.equal(customArgv.envOption, 24)
 | 
			
		||||
 | 
			
		||||
var fs = require('fs')
 | 
			
		||||
var path = require('path')
 | 
			
		||||
var jsonrc = path.resolve('.' + n + 'rc');
 | 
			
		||||
 | 
			
		||||
fs.writeFileSync(jsonrc, [
 | 
			
		||||
  '{',
 | 
			
		||||
    '// json overrides default',
 | 
			
		||||
    '"option": false,',
 | 
			
		||||
    '/* env overrides json */',
 | 
			
		||||
    '"envOption": 24',
 | 
			
		||||
  '}'
 | 
			
		||||
].join('\n'));
 | 
			
		||||
 | 
			
		||||
var commentedJSON = require('../')(n, {
 | 
			
		||||
  option: true
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
fs.unlinkSync(jsonrc);
 | 
			
		||||
 | 
			
		||||
console.log(commentedJSON)
 | 
			
		||||
 | 
			
		||||
assert.equal(commentedJSON.option, false)
 | 
			
		||||
assert.equal(commentedJSON.envOption, 42)
 | 
			
		||||
 | 
			
		||||
assert.equal(commentedJSON.config, jsonrc)
 | 
			
		||||
assert.equal(commentedJSON.configs.length, 1)
 | 
			
		||||
assert.equal(commentedJSON.configs[0], jsonrc)
 | 
			
		||||
		Reference in New Issue
	
	Block a user