mirror of https://github.com/certd/certd
86 lines
2.4 KiB
JavaScript
86 lines
2.4 KiB
JavaScript
var JDCloud = require('../src/lib/jc')
|
|
var config = require('config')
|
|
var global = config.get('global')
|
|
var expect = require('chai').expect
|
|
|
|
describe('JDCloud.Config', function () {
|
|
describe('constructor', function () {
|
|
it('should be able to bass in a Config object as parameter', function () {
|
|
var config = new JDCloud.Config({
|
|
apiVersions: '1',
|
|
vm: {
|
|
apiVersions: '2'
|
|
}
|
|
})
|
|
var copyConfig = new JDCloud.Config(config)
|
|
expect(copyConfig).not.to.equal(config)
|
|
expect(config.apiVersions).to.equal('1')
|
|
expect(copyConfig.apiVersions).to.equal('1')
|
|
})
|
|
it('should be able to pass credential values directly', function () {
|
|
var config = new JDCloud.Config({
|
|
accessKeyId: 'akid',
|
|
secretAccessKey: 'secret'
|
|
})
|
|
expect(config.credentials.accessKeyId).to.equal('akid')
|
|
expect(config.credentials.secretAccessKey).to.equal('secret')
|
|
})
|
|
|
|
it('should use right config value', function () {
|
|
var NC = require('../src/services/nc')
|
|
var nc = new NC()
|
|
expect(nc.config.endpoint.host).to.not.be.empty
|
|
|
|
var config = new JDCloud.Config({
|
|
endpoint: {
|
|
host: 'globalHost.com'
|
|
}
|
|
})
|
|
JDCloud.config.update(config)
|
|
var ncUseGlobal = new NC()
|
|
expect(ncUseGlobal.config.endpoint.host).to.equal('globalHost.com')
|
|
|
|
config = new JDCloud.Config({
|
|
endpoint: {
|
|
host: 'globalHost.com'
|
|
},
|
|
nc: {
|
|
endpoint: {
|
|
host: 'globalNCHost.com'
|
|
}
|
|
}
|
|
})
|
|
JDCloud.config.update(config)
|
|
var ncUseGlobalNCConfig = new NC()
|
|
expect(ncUseGlobalNCConfig.config.endpoint.host).to.equal(
|
|
'globalNCHost.com'
|
|
)
|
|
|
|
var ncUseSelf = new NC({
|
|
endpoint: {
|
|
host: 'ncSelfHost.com'
|
|
}
|
|
})
|
|
expect(ncUseSelf.config.endpoint.host).to.equal('ncSelfHost.com')
|
|
})
|
|
})
|
|
describe('usage', function () {
|
|
it('should use default regionId', function () {
|
|
JDCloud.config = new JDCloud.Config()
|
|
var nc = new JDCloud.NC({
|
|
regionId: 'cn-north-1',
|
|
credentials: {
|
|
accessKeyId: global.accessKeyId,
|
|
secretAccessKey: global.secretAccessKey
|
|
},
|
|
logger: function (str, level = 'INFO') {
|
|
if (level === 'INFO') {
|
|
console.log(str)
|
|
}
|
|
}
|
|
})
|
|
return nc.describeContainers()
|
|
})
|
|
})
|
|
})
|