Skip to content
This repository has been archived by the owner on Mar 10, 2020. It is now read-only.

Commit

Permalink
Merge pull request #33 from ipfs/generic-api
Browse files Browse the repository at this point in the history
generic API
  • Loading branch information
daviddias authored Aug 16, 2016
2 parents 23788f6 + 85c8c02 commit e595684
Show file tree
Hide file tree
Showing 4 changed files with 122 additions and 1 deletion.
48 changes: 48 additions & 0 deletions API/generic/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
Generic API
===========

#### `id`

> Returns the identity of the Peer
##### `Go` **WIP**

##### `JavaScript` - ipfs.id([callback])

`callback` must follow `function (err, identity) {}` signature, where `err` is an error if the operation was not successful. `identity` is an object with the Peer identity.

If no `callback` is passed, a promise is returned.

Example:

```js
ipfs.id(function (err, identity) {
if (err) {
throw err
}
console.log(identity)
})
```

#### `version`

> Returns the implementation version
##### `Go` **WIP**

##### `JavaScript` - ipfs.version([callback])

`callback` must follow `function (err, version) {}` signature, where `err` is an error if the operation was not successful. `version` is an object with the version of the implementation, the commit and the Repo.

If no `callback` is passed, a promise is returned.

Example:

```js
ipfs.version(function (err, version) {
if (err) {
throw err
}
console.log(version)
})
```
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,4 @@
"greenkeeperio-bot <[email protected]>",
"nginnever <[email protected]>"
]
}
}
72 changes: 72 additions & 0 deletions src/generic.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/* eslint-env mocha */
/* eslint max-nested-callbacks: ["error", 8] */

'use strict'

const expect = require('chai').expect

module.exports = (common) => {
describe('.generic', () => {
let ipfs

before(function (done) {
// CI takes longer to instantiate the daemon,
// so we need to increase the timeout for the
// before step
this.timeout(20 * 1000)

common.setup((err, factory) => {
expect(err).to.not.exist
factory.spawnNode((err, node) => {
expect(err).to.not.exist
ipfs = node
done()
})
})
})

after((done) => {
common.teardown(done)
})

describe('callback API', () => {
it('.id', (done) => {
ipfs.id((err, res) => {
expect(err).to.not.exist
expect(res).to.have.a.property('id')
expect(res).to.have.a.property('publicKey')
done()
})
})

it('.version', (done) => {
ipfs.version((err, result) => {
expect(err).to.not.exist
expect(result).to.have.a.property('version')
expect(result).to.have.a.property('commit')
expect(result).to.have.a.property('repo')
done()
})
})
})

describe('promise API', () => {
it('.id', () => {
return ipfs.id()
.then((res) => {
expect(res).to.have.a.property('id')
expect(res).to.have.a.property('publicKey')
})
})

it('.version', () => {
return ipfs.version()
.then((result) => {
expect(result).to.have.a.property('version')
expect(result).to.have.a.property('commit')
expect(result).to.have.a.property('repo')
})
})
})
})
}
1 change: 1 addition & 0 deletions src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ exports.object = require('./object')
exports.files = require('./files')
exports.config = require('./config')
exports.pin = require('./pin')
exports.generic = require('./generic')

0 comments on commit e595684

Please sign in to comment.