mirror of
https://github.com/fluencelabs/js-libp2p-websockets
synced 2025-04-24 22:42:25 +00:00
feat: new aegir
This commit is contained in:
parent
f120f84e51
commit
3d3cdf1c1e
22
.aegir.js
Normal file
22
.aegir.js
Normal file
@ -0,0 +1,22 @@
|
||||
const multiaddr = require('multiaddr')
|
||||
const pull = require('pull-stream')
|
||||
|
||||
const WS = require('./src')
|
||||
|
||||
let listener
|
||||
|
||||
module.exports = {
|
||||
hooks: {
|
||||
browser: {
|
||||
pre (callback) {
|
||||
const ws = new WS()
|
||||
const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws')
|
||||
listener = ws.createListener((conn) => pull(conn, conn))
|
||||
listener.listen(ma, callback)
|
||||
},
|
||||
post (callback) {
|
||||
listener.close(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,3 +1,6 @@
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
@ -36,3 +39,4 @@ node_modules
|
||||
*.swp
|
||||
|
||||
dist
|
||||
|
||||
|
@ -3,14 +3,12 @@ language: node_js
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- node_js: 4
|
||||
env: CXX=g++-4.8
|
||||
- node_js: 6
|
||||
env:
|
||||
- SAUCE=true
|
||||
- CXX=g++-4.8
|
||||
- node_js: "stable"
|
||||
env:
|
||||
env:
|
||||
- CXX=g++-4.8
|
||||
|
||||
# Make sure we have new NPM.
|
||||
|
@ -5,8 +5,10 @@ machine:
|
||||
dependencies:
|
||||
pre:
|
||||
- google-chrome --version
|
||||
- wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
|
||||
- sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
|
||||
- curl -L -o google-chrome.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
||||
- sudo dpkg -i google-chrome.deb || true
|
||||
- sudo apt-get update
|
||||
- sudo apt-get --only-upgrade install google-chrome-stable
|
||||
- sudo apt-get install -f
|
||||
- sudo apt-get install --only-upgrade lsb-base
|
||||
- sudo dpkg -i google-chrome.deb
|
||||
- google-chrome --version
|
||||
|
24
gulpfile.js
24
gulpfile.js
@ -1,24 +0,0 @@
|
||||
'use strict'
|
||||
|
||||
const gulp = require('gulp')
|
||||
const multiaddr = require('multiaddr')
|
||||
const pull = require('pull-stream')
|
||||
|
||||
const WS = require('./src')
|
||||
|
||||
let listener
|
||||
|
||||
gulp.task('test:browser:before', (done) => {
|
||||
const ws = new WS()
|
||||
const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws')
|
||||
listener = ws.createListener((conn) => {
|
||||
pull(conn, conn)
|
||||
})
|
||||
listener.listen(ma, done)
|
||||
})
|
||||
|
||||
gulp.task('test:browser:after', (done) => {
|
||||
listener.close(done)
|
||||
})
|
||||
|
||||
require('aegir/gulp')(gulp)
|
25
package.json
25
package.json
@ -4,16 +4,16 @@
|
||||
"description": "JavaScript implementation of the WebSockets module that libp2p uses and that implements the interface-transport spec",
|
||||
"main": "src/index.js",
|
||||
"scripts": {
|
||||
"lint": "aegir-lint",
|
||||
"test": "gulp test",
|
||||
"test:node": "gulp test:node",
|
||||
"test:browser": "gulp test:browser",
|
||||
"build": "gulp build",
|
||||
"release": "gulp release",
|
||||
"release-minor": "gulp release --type minor",
|
||||
"release-major": "gulp release --type major",
|
||||
"coverage": "gulp coverage",
|
||||
"coverage-publish": "aegir-coverage publish"
|
||||
"lint": "aegir lint",
|
||||
"test": "aegir test",
|
||||
"test:node": "aegir test --target=node",
|
||||
"test:browser": "aegir test --target=browser",
|
||||
"build": "aegir build",
|
||||
"release": "aegir release",
|
||||
"release-minor": "aegir release --type minor",
|
||||
"release-major": "aegir release --type major",
|
||||
"coverage": "aegir coverage",
|
||||
"coverage-publish": "aegir coverage --upload"
|
||||
},
|
||||
"browser": {
|
||||
"pull-ws/server": false
|
||||
@ -42,7 +42,7 @@
|
||||
"pull-ws": "^3.2.9"
|
||||
},
|
||||
"devDependencies": {
|
||||
"aegir": "^11.0.2",
|
||||
"aegir": "github:ipfs/aegir",
|
||||
"chai": "^4.1.1",
|
||||
"dirty-chai": "^2.0.1",
|
||||
"gulp": "^3.9.1",
|
||||
@ -50,7 +50,8 @@
|
||||
"multiaddr": "^3.0.1",
|
||||
"pre-commit": "^1.2.2",
|
||||
"pull-goodbye": "0.0.2",
|
||||
"pull-stream": "^3.6.0"
|
||||
"pull-stream": "^3.6.0",
|
||||
"safe-buffer": "^5.1.1"
|
||||
},
|
||||
"contributors": [
|
||||
"Chris Campbell <christopher.d.campbell@gmail.com>",
|
||||
|
@ -24,12 +24,14 @@ class WebSockets {
|
||||
log('dialing %s', url)
|
||||
const socket = connect(url, {
|
||||
binary: true,
|
||||
onConnect: (err) => callback(err)
|
||||
onConnect: (err) => {
|
||||
callback(err)
|
||||
}
|
||||
})
|
||||
|
||||
const conn = new Connection(socket)
|
||||
conn.getObservedAddrs = (callback) => callback(null, [ma])
|
||||
conn.close = (callback) => socket.close(callback)
|
||||
conn.getObservedAddrs = (cb) => cb(null, [ma])
|
||||
conn.close = (cb) => socket.close(cb)
|
||||
|
||||
return conn
|
||||
}
|
||||
|
@ -20,7 +20,10 @@ describe('libp2p-websockets', () => {
|
||||
beforeEach((done) => {
|
||||
ws = new WS()
|
||||
expect(ws).to.exist()
|
||||
conn = ws.dial(ma, done)
|
||||
conn = ws.dial(ma, (err, res) => {
|
||||
expect(err).to.not.exist()
|
||||
done()
|
||||
})
|
||||
})
|
||||
|
||||
it('echo', (done) => {
|
||||
@ -30,7 +33,7 @@ describe('libp2p-websockets', () => {
|
||||
source: pull.values([message]),
|
||||
sink: pull.collect((err, results) => {
|
||||
expect(err).to.not.exist()
|
||||
expect(results).to.be.eql([message])
|
||||
expect(results).to.eql([message])
|
||||
done()
|
||||
})
|
||||
})
|
||||
@ -40,13 +43,13 @@ describe('libp2p-websockets', () => {
|
||||
|
||||
describe('stress', () => {
|
||||
it('one big write', (done) => {
|
||||
const rawMessage = new Buffer(1000000).fill('a')
|
||||
const rawMessage = Buffer.allocUnsafe(1000000).fill('a')
|
||||
|
||||
const s = goodbye({
|
||||
source: pull.values([rawMessage]),
|
||||
sink: pull.collect((err, results) => {
|
||||
expect(err).to.not.exist()
|
||||
expect(results).to.be.eql([rawMessage])
|
||||
expect(results).to.eql([rawMessage])
|
||||
done()
|
||||
})
|
||||
})
|
||||
@ -58,7 +61,7 @@ describe('libp2p-websockets', () => {
|
||||
source: pull(
|
||||
pull.infinite(),
|
||||
pull.take(1000),
|
||||
pull.map((val) => Buffer(val.toString()))
|
||||
pull.map((val) => Buffer.from(val.toString()))
|
||||
),
|
||||
sink: pull.collect((err, result) => {
|
||||
expect(err).to.not.exist()
|
||||
|
Loading…
x
Reference in New Issue
Block a user