diff --git a/package.json b/package.json index 1a8e5da04b..1ae81a34e1 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ }, "main": "src/index.js", "scripts": { - "lint": "standard", + "lint": "standard --verbose | snazzy", "coverage": "istanbul cover --print both -- _mocha tests/test-core/index.js", "coverage:http-api": "istanbul cover --print both -- _mocha tests/test-http-api/index.js", "test": "npm run test:node && npm run test:browser", @@ -61,7 +61,8 @@ "nexpect": "^0.5.0", "pre-commit": "^1.1.2", "rimraf": "^2.4.4", - "standard": "^5.4.1", + "snazzy": "^3.0.0", + "standard": "^6.0.7", "stream-to-promise": "^1.1.0", "transform-loader": "^0.2.3", "webpack": "^2.0.7-beta" diff --git a/src/cli/commands/add.js b/src/cli/commands/add.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/add.js +++ b/src/cli/commands/add.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/bootstrap/list.js b/src/cli/commands/bootstrap/list.js index 1a09b46522..f0fa7e5c79 100644 --- a/src/cli/commands/bootstrap/list.js +++ b/src/cli/commands/bootstrap/list.js @@ -15,7 +15,7 @@ module.exports = Command.extend({ var node = new IPFS() node.bootstrap.list((err, list) => { if (err) { return log.error(err) } - list.forEach(node => { + list.forEach((node) => { console.log(node) }) }) diff --git a/src/cli/commands/commands.js b/src/cli/commands/commands.js index 27115faa3c..a8ab673e83 100644 --- a/src/cli/commands/commands.js +++ b/src/cli/commands/commands.js @@ -7,7 +7,7 @@ const ronin = require('ronin') module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { const cli = ronin(path.resolve(__dirname, '..')) cli.setupCommands() diff --git a/src/cli/commands/daemon.js b/src/cli/commands/daemon.js index 4ee301a7d7..1c69bf575f 100644 --- a/src/cli/commands/daemon.js +++ b/src/cli/commands/daemon.js @@ -9,7 +9,7 @@ log.error = debug('cli:daemon:error') module.exports = Command.extend({ desc: 'Start a long-running daemon process', - run: name => { + run: (name) => { console.log('Initializing daemon...') httpAPI.start((err) => { if (err) { diff --git a/src/cli/commands/dns.js b/src/cli/commands/dns.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/dns.js +++ b/src/cli/commands/dns.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/get.js b/src/cli/commands/get.js index 0597eb07f7..947d8e4b96 100644 --- a/src/cli/commands/get.js +++ b/src/cli/commands/get.js @@ -3,6 +3,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/init.js b/src/cli/commands/init.js index 4ed58ef01f..8b3b7af9fb 100644 --- a/src/cli/commands/init.js +++ b/src/cli/commands/init.js @@ -24,6 +24,6 @@ module.exports = Command.extend({ } }, - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/ls.js b/src/cli/commands/ls.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/ls.js +++ b/src/cli/commands/ls.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/mount.js b/src/cli/commands/mount.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/mount.js +++ b/src/cli/commands/mount.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/ping.js b/src/cli/commands/ping.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/ping.js +++ b/src/cli/commands/ping.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/refs.js b/src/cli/commands/refs.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/refs.js +++ b/src/cli/commands/refs.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/resolve.js b/src/cli/commands/resolve.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/resolve.js +++ b/src/cli/commands/resolve.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/cli/commands/update.js b/src/cli/commands/update.js index b86b5708e4..af4020b384 100644 --- a/src/cli/commands/update.js +++ b/src/cli/commands/update.js @@ -5,6 +5,6 @@ const Command = require('ronin').Command module.exports = Command.extend({ desc: '', - run: name => { + run: (name) => { } }) diff --git a/src/http-api/index.js b/src/http-api/index.js index f7f047322d..ffdf6d6e8e 100644 --- a/src/http-api/index.js +++ b/src/http-api/index.js @@ -61,7 +61,7 @@ exports.start = (callback) => { }) } -exports.stop = callback => { +exports.stop = (callback) => { const repoPath = process.env.IPFS_PATH || os.homedir() + '/.ipfs' fs.unlinkSync(repoPath + '/api') exports.server.stop(callback) diff --git a/src/ipfs-core/index.js b/src/ipfs-core/index.js index f30e790016..9edca67501 100644 --- a/src/ipfs-core/index.js +++ b/src/ipfs-core/index.js @@ -95,7 +95,7 @@ function IPFS (repo) { repo.config.get((err, config) => { if (err) { return callback(err) } config.Bootstrap.push(multiaddr) - repo.config.set(config, err => { + repo.config.set(config, (err) => { if (err) { return callback(err) } callback() @@ -105,7 +105,7 @@ function IPFS (repo) { rm: (multiaddr, callback) => { repo.config.get((err, config) => { if (err) { return callback(err) } - config.Bootstrap = config.Bootstrap.filter(mh => { + config.Bootstrap = config.Bootstrap.filter((mh) => { if (mh === multiaddr) { return false } else { return true } @@ -124,7 +124,7 @@ function IPFS (repo) { replace: (config, callback) => { repo.config.set(config, callback) }, - show: callback => { + show: (callback) => { repo.config.get((err, config) => { if (err) { return callback(err) } callback(null, config) diff --git a/tests/test-cli/index.js b/tests/test-cli/index.js index fb62eadb88..f5a9bdaa4d 100644 --- a/tests/test-cli/index.js +++ b/tests/test-cli/index.js @@ -9,29 +9,29 @@ describe('cli', () => { const repoExample = process.cwd() + '/tests/repo-example' const repoTests = exports.repoTests = process.cwd() + '/tests/repo-tests-run' - before(done => { - ncp(repoExample, repoTests, err => { + before((done) => { + ncp(repoExample, repoTests, (err) => { process.env.IPFS_PATH = repoTests expect(err).to.equal(null) done() }) }) - after(done => { - rimraf(repoTests, err => { + after((done) => { + rimraf(repoTests, (err) => { expect(err).to.equal(null) done() }) }) const tests = fs.readdirSync(__dirname) - tests.filter(file => { + tests.filter((file) => { if (file === 'index.js' || file === 'api.js') { return false } else { return true } - }).forEach(file => { + }).forEach((file) => { require('./' + file) }) }) diff --git a/tests/test-cli/test-bootstrap.js b/tests/test-cli/test-bootstrap.js index 7d402b17a5..8c7d9cfff5 100644 --- a/tests/test-cli/test-bootstrap.js +++ b/tests/test-cli/test-bootstrap.js @@ -30,7 +30,7 @@ describe('id', () => { '/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT' ] - it('list the bootstrap nodes', done => { + it('list the bootstrap nodes', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'bootstrap', 'list']) .run((err, stdout, exitcode) => { expect(stdout).to.deep.equal(defaultList) @@ -40,7 +40,7 @@ describe('id', () => { }) }) - it('add another bootstrap node', done => { + it('add another bootstrap node', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'bootstrap', 'add', '/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT']) .run((err, stdout, exitcode) => { expect(err).to.not.exist @@ -56,7 +56,7 @@ describe('id', () => { }) }) - it('rm a bootstrap node', done => { + it('rm a bootstrap node', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'bootstrap', 'rm', '/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT']) .run((err, stdout, exitcode) => { expect(err).to.not.exist diff --git a/tests/test-cli/test-config.js b/tests/test-cli/test-config.js index 9256728209..5ba80d2a72 100644 --- a/tests/test-cli/test-config.js +++ b/tests/test-cli/test-config.js @@ -11,7 +11,7 @@ describe('config', () => { const updatedConfig = () => JSON.parse(fs.readFileSync(configPath, 'utf8')) - it('get a config key value', done => { + it('get a config key value', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'Identity.PeerID']) .run((err, stdout, exitcode) => { const expected = 'QmQ2zigjQikYnyYUSXZydNXrDRhBut2mubwJBaLXobMt3A' @@ -22,7 +22,7 @@ describe('config', () => { }) }) - it('set a config key with a string value', done => { + it('set a config key with a string value', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'foo', 'bar']) .run((err, stdout, exitcode) => { expect(err).to.not.exist @@ -32,7 +32,7 @@ describe('config', () => { }) }) - it('set a config key with true', done => { + it('set a config key with true', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'foo', true, '--bool']) .run((err, stdout, exitcode) => { expect(err).to.not.exist @@ -42,7 +42,7 @@ describe('config', () => { }) }) - it('set a config key with false', done => { + it('set a config key with false', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'foo', false, '--bool']) .run((err, stdout, exitcode) => { expect(err).to.not.exist @@ -52,7 +52,7 @@ describe('config', () => { }) }) - it('set a config key with json', done => { + it('set a config key with json', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'foo', '{"bar": 0}', '--json']) .run((err, stdout, exitcode) => { expect(err).to.not.exist @@ -62,7 +62,7 @@ describe('config', () => { }) }) - it('set a config key with invalid json', done => { + it('set a config key with invalid json', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config', 'foo', '{"bar: 0}', '--json']) .run((err, stdout, exitcode) => { const expected = 'error\tinvalid JSON provided' @@ -73,7 +73,7 @@ describe('config', () => { }) }) - it('call config with no arguments', done => { + it('call config with no arguments', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'config']) .run((err, stdout, exitcode) => { const expected = "error\targument 'key' is required" diff --git a/tests/test-cli/test-id.js b/tests/test-cli/test-id.js index ec26aef2d7..66077d2bfd 100644 --- a/tests/test-cli/test-id.js +++ b/tests/test-cli/test-id.js @@ -48,7 +48,7 @@ describe('id', () => { }) }) - it('get the id', done => { + it('get the id', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'id']) .run((err, stdout, exitcode) => { var expected = [ "{ ID: 'QmQ2zigjQikYnyYUSXZydNXrDRhBut2mubwJBaLXobMt3A',", diff --git a/tests/test-cli/test-version.js b/tests/test-cli/test-version.js index fe5d0c8604..5e5083c884 100644 --- a/tests/test-cli/test-version.js +++ b/tests/test-cli/test-version.js @@ -5,7 +5,7 @@ const nexpect = require('nexpect') describe('version', () => { describe('api offline', () => { - it('get the version', done => { + it('get the version', (done) => { nexpect.spawn('node', [process.cwd() + '/src/cli/bin.js', 'version']) .expect('0.4.0-dev') .run((err, stdout, exitcode) => { diff --git a/tests/test-core/browser.js b/tests/test-core/browser.js index ff1c7ce6f9..415d9ed01a 100644 --- a/tests/test-core/browser.js +++ b/tests/test-core/browser.js @@ -46,5 +46,5 @@ describe('IPFS Repo Tests on the Browser', function () { const testsContext = require.context('.', true, /test-*/) testsContext .keys() - .forEach(key => testsContext(key)) + .forEach((key) => testsContext(key)) }) diff --git a/tests/test-core/index.js b/tests/test-core/index.js index 1aa116ba39..5e6f69e73d 100644 --- a/tests/test-core/index.js +++ b/tests/test-core/index.js @@ -9,29 +9,29 @@ describe('core', () => { const repoExample = process.cwd() + '/tests/repo-example' const repoTests = process.cwd() + '/tests/repo-tests-run' - before(done => { - ncp(repoExample, repoTests, err => { + before((done) => { + ncp(repoExample, repoTests, (err) => { process.env.IPFS_PATH = repoTests expect(err).to.equal(null) done() }) }) - after(done => { - rimraf(repoTests, err => { + after((done) => { + rimraf(repoTests, (err) => { expect(err).to.equal(null) done() }) }) const tests = fs.readdirSync(__dirname) - tests.filter(file => { + tests.filter((file) => { if (file === 'index.js' || file === 'browser.js') { return false } else { return true } - }).forEach(file => { + }).forEach((file) => { require('./' + file) }) }) diff --git a/tests/test-core/test-block.js b/tests/test-core/test-block.js index 45a1715eef..0f49dc811e 100644 --- a/tests/test-core/test-block.js +++ b/tests/test-core/test-block.js @@ -27,7 +27,7 @@ describe('block', function () { done() }) }) - it('put', done => { + it('put', (done) => { var b = new Block('random data') ipfs.block.put(b, function (err) { expect(err).to.not.exist @@ -40,7 +40,7 @@ describe('block', function () { }) }) - it('rm', done => { + it('rm', (done) => { var b = new Block('I will not last long enough') ipfs.block.put(b, function (err) { expect(err).to.not.exist diff --git a/tests/test-core/test-bootstrap.js b/tests/test-core/test-bootstrap.js index 7c749a6037..8d2664f6ca 100644 --- a/tests/test-core/test-bootstrap.js +++ b/tests/test-core/test-bootstrap.js @@ -33,7 +33,7 @@ describe('bootstrap', () => { '/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT' ] - it('get bootstrap list', done => { + it('get bootstrap list', (done) => { ipfs.bootstrap.list((err, list) => { expect(err).to.not.exist expect(list).to.deep.equal(defaultList) @@ -41,8 +41,8 @@ describe('bootstrap', () => { }) }) - it('add a peer to the bootstrap list', done => { - ipfs.bootstrap.add('/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT', err => { + it('add a peer to the bootstrap list', (done) => { + ipfs.bootstrap.add('/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT', (err) => { expect(err).to.not.exist ipfs.bootstrap.list((err, list) => { expect(err).to.not.exist @@ -52,8 +52,8 @@ describe('bootstrap', () => { }) }) - it('remove a peer from the bootstrap list', done => { - ipfs.bootstrap.rm('/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT', err => { + it('remove a peer from the bootstrap list', (done) => { + ipfs.bootstrap.rm('/ip4/111.111.111.111/tcp/1001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLUVIT', (err) => { expect(err).to.not.exist ipfs.bootstrap.list((err, list) => { expect(err).to.not.exist diff --git a/tests/test-core/test-config.js b/tests/test-core/test-config.js index 723a67a591..5f0b65c348 100644 --- a/tests/test-core/test-config.js +++ b/tests/test-core/test-config.js @@ -64,7 +64,7 @@ describe('config', () => { } } - it('show', done => { + it('show', (done) => { const ipfs = new IPFS() ipfs.config.show((err, config) => { expect(err).to.not.exist @@ -73,14 +73,14 @@ describe('config', () => { }) }) - it('replace', done => { + it('replace', (done) => { const ipfs = new IPFS() - ipfs.config.replace({}, err => { + ipfs.config.replace({}, (err) => { expect(err).to.not.exist ipfs.config.show((err, config) => { expect(err).to.not.exist expect(config).to.deep.equal({}) - ipfs.config.replace(defaultConfig, err => { + ipfs.config.replace(defaultConfig, (err) => { expect(err).to.not.exist done() }) @@ -89,7 +89,7 @@ describe('config', () => { }) // cli only feature built with show and replace -// it.skip('edit', done => { +// it.skip('edit', (done) => { // const ipfs = new IPFS() // ipfs.config((err, config) => { // expect(err).to.not.exist diff --git a/tests/test-core/test-id.js b/tests/test-core/test-id.js index cec987963b..d64ddff413 100644 --- a/tests/test-core/test-id.js +++ b/tests/test-core/test-id.js @@ -6,7 +6,7 @@ process.env.IPFS_PATH = process.cwd() + '/tests/repo-example' const IPFS = require('../../src/ipfs-core') describe('id', () => { - it('get id', done => { + it('get id', (done) => { const ipfs = new IPFS() ipfs.id((err, id) => { expect(err).to.not.exist diff --git a/tests/test-core/test-version.js b/tests/test-core/test-version.js index e0f416d502..18688e6a92 100644 --- a/tests/test-core/test-version.js +++ b/tests/test-core/test-version.js @@ -6,7 +6,7 @@ process.env.IPFS_PATH = process.cwd() + '/tests/repo-example' const IPFS = require('../../src/ipfs-core') describe('version', () => { - it('get version', done => { + it('get version', (done) => { const ipfs = new IPFS() ipfs.version((err, version) => { expect(err).to.not.exist diff --git a/tests/test-http-api/index.js b/tests/test-http-api/index.js index 1c24fef69c..b19c7a236d 100644 --- a/tests/test-http-api/index.js +++ b/tests/test-http-api/index.js @@ -11,7 +11,7 @@ describe('http api', () => { const repoTests = process.cwd() + '/tests/repo-tests-run' process.env.IPFS_PATH = repoTests - before(done => { + before((done) => { ncp(repoExample, repoTests, (err) => { expect(err).to.not.exist api.start((err) => { @@ -21,7 +21,7 @@ describe('http api', () => { }) }) - after(done => { + after((done) => { api.stop((err) => { expect(err).to.not.exist rimraf(repoTests, (err) => { @@ -32,13 +32,13 @@ describe('http api', () => { }) var tests = fs.readdirSync(__dirname) - tests.filter(file => { + tests.filter((file) => { if (file === 'index.js') { return false } else { return true } - }).forEach(file => { + }).forEach((file) => { require('./' + file) }) }) diff --git a/tests/test-http-api/test-config.js b/tests/test-http-api/test-config.js index fe46553bd0..05a5430eae 100644 --- a/tests/test-http-api/test-config.js +++ b/tests/test-http-api/test-config.js @@ -26,7 +26,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(400) done() }) @@ -36,7 +36,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=kitten' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(500) expect(res.result.Code).to.equal(0) expect(res.result.Message).to.be.a('string') @@ -48,7 +48,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=API.HTTPHeaders' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('API.HTTPHeaders') expect(res.result.Value).to.equal(null) @@ -60,7 +60,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config/API.HTTPHeaders' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('API.HTTPHeaders') expect(res.result.Value).to.equal(null) @@ -72,7 +72,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=Datastore.Path&arg=kitten' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('Datastore.Path') expect(res.result.Value).to.equal('kitten') @@ -86,7 +86,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=Datastore.Path&arg=kitten&json' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(500) expect(res.result.Code).to.equal(0) expect(res.result.Message).to.be.a('string') @@ -99,7 +99,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=Datastore.Path&arg={\"kitten\": true}&json' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('Datastore.Path') expect(res.result.Value).to.deep.equal({ kitten: true }) @@ -113,7 +113,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=Datastore.Path&arg=true&bool' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('Datastore.Path') expect(res.result.Value).to.deep.equal(true) @@ -127,7 +127,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config?arg=Datastore.Path&arg=false&bool' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result.Key).to.equal('Datastore.Path') expect(res.result.Value).to.deep.equal(false) @@ -142,7 +142,7 @@ describe('config', () => { api.inject({ method: 'POST', url: '/api/v0/config/show' - }, res => { + }, (res) => { expect(res.statusCode).to.equal(200) expect(res.result).to.deep.equal(updatedConfig()) done() diff --git a/tests/test-http-api/test-version.js b/tests/test-http-api/test-version.js index cb9473b1cc..57fed030ba 100644 --- a/tests/test-http-api/test-version.js +++ b/tests/test-http-api/test-version.js @@ -16,7 +16,7 @@ describe('version', () => { api.inject({ method: 'GET', url: '/api/v0/version' - }, res => { + }, (res) => { expect(res.result.Version).to.equal('0.4.0-dev') expect(res.result).to.have.a.property('Commit') expect(res.result).to.have.a.property('Repo')