Skip to content

Commit

Permalink
Simplify API a bit
Browse files Browse the repository at this point in the history
  • Loading branch information
doesdev committed May 29, 2017
1 parent 211a709 commit 573025d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 7 deletions.
9 changes: 4 additions & 5 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,12 @@ module.exports = (opts = {}) => {
env.GOARCH = goArch = goArch || env.GOARCH || arch
env.ngoBin = path.join(goRoot, 'bin', 'go')
try { env.hasBin = exists(path.join(goRoot, 'bin')) } catch (ex) {}
return (cmd, args) => runner(cmd, args, env)
return (args, cmdOpts = {}) => runner(args, Object.assign({}, env, cmdOpts))
}

function runner (cmd, args, env) {
if (!cmd) return Promise.reject(new Error(`No GO command specified`))
cmd = Array.isArray(cmd) ? cmd : [cmd]
args = Array.isArray(args) ? cmd.concat(args) : cmd
function runner (args, env) {
if (!args) return Promise.reject(new Error(`No GO command specified`))
args = Array.isArray(args) ? args : [args]
if (env.hasBin) return execa(env.ngoBin, args, {env})
return getGo(env.version, env.GOROOT).then(() => {
env.hasBin = true
Expand Down
7 changes: 5 additions & 2 deletions test.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@ import test from 'ava'
import Ngo from './index'
const ngo = Ngo({useLocal: true})

test(`ngo('version') returns version`, async (assert) => {
assert.regex((await ngo('version')).stdout, /^go version/)
})

test(`ngo(['version']) returns version`, async (assert) => {
let version = (await ngo(['version'])).stdout
assert.regex(version, /^go version/)
assert.regex((await ngo(['version'])).stdout, /^go version/)
})

0 comments on commit 573025d

Please sign in to comment.