Skip to content

Commit

Permalink
Merge pull request libp2p#27 from diasdavid/tests/websockets
Browse files Browse the repository at this point in the history
add websockets to the battery of tests, everything checks out
  • Loading branch information
daviddias committed Mar 15, 2016
2 parents 6bcf48f + eda78d7 commit c4f87f0
Show file tree
Hide file tree
Showing 2 changed files with 68 additions and 7 deletions.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
"istanbul": "^0.4.2",
"libp2p-spdy": "^0.2.3",
"libp2p-tcp": "^0.4.0",
"libp2p-websockets": "^0.2.0",
"mocha": "^2.4.5",
"multiaddr": "^1.3.0",
"peer-id": "^0.6.0",
Expand Down
74 changes: 67 additions & 7 deletions tests/swarm-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ const multiaddr = require('multiaddr')
const Peer = require('peer-info')
const Swarm = require('../src')
const TCP = require('libp2p-tcp')
const WebSockets = require('libp2p-websockets')
const bl = require('bl')
const spdy = require('libp2p-spdy')

Expand Down Expand Up @@ -174,18 +175,77 @@ describe('transport - tcp', function () {
})
})

describe('transport - udt', function () {
describe('transport - websockets', function () {
this.timeout(10000)

before((done) => { done() })
var swarmA
var swarmB
var peerA = new Peer()
var peerB = new Peer()

it.skip('add', (done) => {})
it.skip('listen', (done) => {})
it.skip('dial', (done) => {})
it.skip('close', (done) => {})
before((done) => {
peerA.multiaddr.add(multiaddr('/ip4/127.0.0.1/tcp/9888/websockets'))
peerB.multiaddr.add(multiaddr('/ip4/127.0.0.1/tcp/9999/websockets'))
swarmA = new Swarm(peerA)
swarmB = new Swarm(peerB)
done()
})

it('add', (done) => {
swarmA.transport.add('ws', new WebSockets())
expect(Object.keys(swarmA.transports).length).to.equal(1)
swarmB.transport.add('ws', new WebSockets(), () => {
expect(Object.keys(swarmB.transports).length).to.equal(1)
done()
})
})

it('listen', (done) => {
var count = 0
swarmA.transport.listen('ws', {}, (conn) => {
conn.pipe(conn)
}, ready)
swarmB.transport.listen('ws', {}, (conn) => {
conn.pipe(conn)
}, ready)

function ready () {
if (++count === 2) {
expect(peerA.multiaddrs.length).to.equal(1)
expect(peerA.multiaddrs[0]).to.deep.equal(multiaddr('/ip4/127.0.0.1/tcp/9888/websockets'))
expect(peerB.multiaddrs.length).to.equal(1)
expect(peerB.multiaddrs[0]).to.deep.equal(multiaddr('/ip4/127.0.0.1/tcp/9999/websockets'))
done()
}
}
})

it('dial', (done) => {
const conn = swarmA.transport.dial('ws', multiaddr('/ip4/127.0.0.1/tcp/9999/websockets'), (err, conn) => {
expect(err).to.not.exist
})
conn.pipe(bl((err, data) => {
expect(err).to.not.exist
done()
}))
conn.write('hey')
conn.end()
})

it('close', (done) => {
var count = 0
swarmA.transport.close('ws', closed)
swarmB.transport.close('ws', closed)

function closed () {
if (++count === 2) {
done()
}
}
})
})

describe('transport - websockets', function () {
describe('transport - utp', function () {
this.timeout(10000)

before((done) => { done() })
Expand Down

0 comments on commit c4f87f0

Please sign in to comment.