1 | var test = require('tap').test
|
2 | var npmconf = require('../npmconf.js')
|
3 | var common = require('./00-setup.js')
|
4 | var path = require('path')
|
5 | var fix = path.resolve(__dirname, 'fixtures')
|
6 | var projectRc = path.resolve(fix, '.npmrc')
|
7 |
|
8 | var projectData = { just: 'testing' }
|
9 |
|
10 | var ucData =
|
11 | { globalconfig: common.globalconfig,
|
12 | email: 'i@izs.me',
|
13 | 'env-thing': 'asdf',
|
14 | 'init.author.name': 'Isaac Z. Schlueter',
|
15 | 'init.author.email': 'i@izs.me',
|
16 | 'init.author.url': 'http://blog.izs.me/',
|
17 | 'proprietary-attribs': false,
|
18 | 'npm:publishtest': true,
|
19 | '_npmjs.org:couch': 'https://admin:password@localhost:5984/registry',
|
20 | _auth: 'dXNlcm5hbWU6cGFzc3dvcmQ=',
|
21 | 'npm-www:nocache': '1',
|
22 | nodedir: '/Users/isaacs/dev/js/node-v0.8',
|
23 | 'sign-git-tag': true,
|
24 | message: 'v%s',
|
25 | 'strict-ssl': false,
|
26 | 'tmp': process.env.HOME + '/.tmp',
|
27 | username : "username",
|
28 | _password : "password",
|
29 | _token:
|
30 | { AuthSession: 'yabba-dabba-doodle',
|
31 | version: '1',
|
32 | expires: '1345001053415',
|
33 | path: '/',
|
34 | httponly: true } }
|
35 |
|
36 | var envData = common.envData
|
37 | var envDataFix = common.envDataFix
|
38 |
|
39 | var gcData = { 'package-config:foo': 'boo' }
|
40 |
|
41 | var biData = {}
|
42 |
|
43 | var cli = { foo: 'bar', umask: 022, prefix: fix }
|
44 |
|
45 | var expectList =
|
46 | [ cli,
|
47 | envDataFix,
|
48 | projectData,
|
49 | ucData,
|
50 | gcData,
|
51 | biData ]
|
52 |
|
53 | var expectSources =
|
54 | { cli: { data: cli },
|
55 | env:
|
56 | { data: envDataFix,
|
57 | source: envData,
|
58 | prefix: '' },
|
59 | project:
|
60 | { path: projectRc,
|
61 | type: 'ini',
|
62 | data: projectData },
|
63 | user:
|
64 | { path: common.userconfig,
|
65 | type: 'ini',
|
66 | data: ucData },
|
67 | global:
|
68 | { path: common.globalconfig,
|
69 | type: 'ini',
|
70 | data: gcData },
|
71 | builtin: { data: biData } }
|
72 |
|
73 | test('no builtin', function (t) {
|
74 | npmconf.load(cli, function (er, conf) {
|
75 | if (er) throw er
|
76 | t.same(conf.list, expectList)
|
77 | t.same(conf.sources, expectSources)
|
78 | t.same(npmconf.rootConf.list, [])
|
79 | t.equal(npmconf.rootConf.root, npmconf.defs.defaults)
|
80 | t.equal(conf.root, npmconf.defs.defaults)
|
81 | t.equal(conf.get('umask'), 022)
|
82 | t.equal(conf.get('heading'), 'npm')
|
83 | t.end()
|
84 | })
|
85 | })
|