diff --git a/.aegir.js b/.aegir.js index 4352a52..08fd135 100644 --- a/.aegir.js +++ b/.aegir.js @@ -1,6 +1,6 @@ 'use strict' -const multiaddr = require('multiaddr') +const { Multiaddr } = require('multiaddr') const pipe = require('it-pipe') const WS = require('./src') @@ -12,7 +12,7 @@ let listener async function before () { const ws = new WS({ upgrader: mockUpgrader }) - const ma = multiaddr('/ip4/127.0.0.1/tcp/9095/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9095/ws') listener = ws.createListener(conn => pipe(conn, conn)) await listener.listen(ma) listener.on('error', console.error) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..7f343ac --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,48 @@ +name: ci +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - run: npm install + - run: npx aegir lint + - run: npx aegir dep-check -- -i wrtc -i electron-webrtc + - run: npx aegir build --no-types + test-node: + needs: check + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-latest, ubuntu-latest, macos-latest] + node: [14, 15] + fail-fast: true + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node }} + - run: npm install + - run: npx nyc --reporter=lcov aegir test -t node -- --bail + - uses: codecov/codecov-action@v1 + test-chrome: + needs: check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - run: npm install + - run: npx aegir test -t browser -t webworker --bail + test-firefox: + needs: check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - run: npm install + - run: npx aegir test -t browser -t webworker --bail -- --browsers FirefoxHeadless \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index cadab04..0000000 --- a/.travis.yml +++ /dev/null @@ -1,48 +0,0 @@ -language: node_js -cache: npm -sudo: false - -stages: - - check - - test - - cov - -node_js: - - '10' - - '12' - -os: - - linux - - osx - - windows - -before_script: - - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6'; fi - -script: npx nyc -s npm run test:node -- --bail -after_success: npx nyc report --reporter=text-lcov > coverage.lcov && npx codecov - -jobs: - include: - - stage: check - script: - - npx aegir build --bundlesize - - npx aegir dep-check - - npm run lint - - - stage: test - name: chrome - addons: - chrome: stable - script: - - npx aegir test -t browser - - - stage: test - name: firefox - addons: - firefox: latest - script: - - npx aegir test -t browser -- --browsers FirefoxHeadless - -notifications: - email: false diff --git a/README.md b/README.md index 8a6d9c5..4f3d367 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,7 @@ [![Circle CI](https://circleci.com/gh/libp2p/js-libp2p-websockets.svg?style=svg)](https://circleci.com/gh/libp2p/js-libp2p-websockets) [![Dependency Status](https://david-dm.org/libp2p/js-libp2p-websockets.svg?style=flat-square)](https://david-dm.org/libp2p/js-libp2p-websockets) [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/feross/standard) -![](https://img.shields.io/badge/npm-%3E%3D3.0.0-orange.svg?style=flat-square) -![](https://img.shields.io/badge/Node.js-%3E%3D4.0.0-orange.svg?style=flat-square) +![](https://img.shields.io/badge/Node.js-%3E%3D14.0.0-orange.svg?style=flat-square) [![](https://raw.githubusercontent.com/libp2p/interface-transport/master/img/badge.png)](https://github.com/libp2p/interface-transport) [![](https://raw.githubusercontent.com/libp2p/interface-connection/master/img/badge.png)](https://github.com/libp2p/interface-connection) diff --git a/package.json b/package.json index eb976f9..e413eb0 100644 --- a/package.json +++ b/package.json @@ -40,25 +40,25 @@ "dependencies": { "abortable-iterator": "^3.0.0", "class-is": "^1.1.0", - "debug": "^4.2.0", + "debug": "^4.3.1", "err-code": "^3.0.1", - "ipfs-utils": "^6.0.1", + "ipfs-utils": "^6.0.6", "it-ws": "^4.0.0", - "libp2p-utils": "^0.2.1", - "mafmt": "^8.0.1", - "multiaddr": "^8.1.1", + "libp2p-utils": "^0.3.0", + "mafmt": "^9.0.0", + "multiaddr": "^9.0.1", "multiaddr-to-uri": "^6.0.0", "p-defer": "^3.0.0", "p-timeout": "^4.1.0" }, "devDependencies": { "abort-controller": "^3.0.0", - "aegir": "^32.2.0", - "bl": "^4.0.0", + "aegir": "^33.0.0", + "bl": "^5.0.0", "is-loopback-addr": "^1.0.1", - "it-goodbye": "^2.0.1", - "it-pipe": "^1.0.1", - "libp2p-interfaces": "^0.8.3", + "it-goodbye": "^3.0.0", + "it-pipe": "^1.1.0", + "libp2p-interfaces": "^0.9.0", "streaming-iterables": "^5.0.2", "uint8arrays": "^2.1.2", "util": "^0.12.3" diff --git a/src/index.js b/src/index.js index 26c550c..e6f74e7 100644 --- a/src/index.js +++ b/src/index.js @@ -15,6 +15,10 @@ const createListener = require('./listener') const toConnection = require('./socket-to-conn') const filters = require('./filters') +/** + * @typedef {import('multiaddr').Multiaddr} Multiaddr + */ + /** * @class WebSockets */ diff --git a/src/listener.js b/src/listener.js index b8599e6..4349585 100644 --- a/src/listener.js +++ b/src/listener.js @@ -2,7 +2,7 @@ const EventEmitter = require('events') const os = require('os') -const multiaddr = require('multiaddr') +const { Multiaddr } = require('multiaddr') const { createServer } = require('it-ws') const debug = require('debug') const log = debug('libp2p:websockets:listener') @@ -78,7 +78,7 @@ module.exports = ({ handler, upgrader }, options = {}) => { Object.keys(netInterfaces).forEach((niKey) => { netInterfaces[niKey].forEach((ni) => { if (ni.family === 'IPv4') { - multiaddrs.push(multiaddr(m.toString().replace('0.0.0.0', ni.address))) + multiaddrs.push(new Multiaddr(m.toString().replace('0.0.0.0', ni.address))) } }) }) diff --git a/test/browser.js b/test/browser.js index 092646e..78c6cef 100644 --- a/test/browser.js +++ b/test/browser.js @@ -3,7 +3,7 @@ const { expect } = require('aegir/utils/chai') -const multiaddr = require('multiaddr') +const { Multiaddr } = require('multiaddr') const pipe = require('it-pipe') const goodbye = require('it-goodbye') const { collect, take } = require('streaming-iterables') @@ -17,7 +17,7 @@ const mockUpgrader = { } describe('libp2p-websockets', () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/9095/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9095/ws') let ws let conn @@ -35,10 +35,10 @@ describe('libp2p-websockets', () => { }) it('should filter out no DNS websocket addresses', function () { - const ma1 = multiaddr('/ip4/127.0.0.1/tcp/80/ws') - const ma2 = multiaddr('/ip4/127.0.0.1/tcp/443/wss') - const ma3 = multiaddr('/ip6/::1/tcp/80/ws') - const ma4 = multiaddr('/ip6/::1/tcp/443/wss') + const ma1 = new Multiaddr('/ip4/127.0.0.1/tcp/80/ws') + const ma2 = new Multiaddr('/ip4/127.0.0.1/tcp/443/wss') + const ma3 = new Multiaddr('/ip6/::1/tcp/80/ws') + const ma4 = new Multiaddr('/ip6/::1/tcp/443/wss') const valid = ws.filter([ma1, ma2, ma3, ma4]) expect(valid.length).to.equal(0) diff --git a/test/compliance.node.js b/test/compliance.node.js index ece8c7f..5e220b5 100644 --- a/test/compliance.node.js +++ b/test/compliance.node.js @@ -2,7 +2,7 @@ 'use strict' const tests = require('libp2p-interfaces/src/transport/tests') -const multiaddr = require('multiaddr') +const { Multiaddr } = require('multiaddr') const http = require('http') const WS = require('../src') const filters = require('../src/filters') @@ -12,10 +12,10 @@ describe('interface-transport compliance', () => { async setup ({ upgrader }) { // eslint-disable-line require-await const ws = new WS({ upgrader, filter: filters.all }) const addrs = [ - multiaddr('/ip4/127.0.0.1/tcp/9091/ws'), - multiaddr('/ip4/127.0.0.1/tcp/9092/ws'), - multiaddr('/dns4/ipfs.io/tcp/9092/ws'), - multiaddr('/dns4/ipfs.io/tcp/9092/wss') + new Multiaddr('/ip4/127.0.0.1/tcp/9091/ws'), + new Multiaddr('/ip4/127.0.0.1/tcp/9092/ws'), + new Multiaddr('/dns4/ipfs.io/tcp/9092/ws'), + new Multiaddr('/dns4/ipfs.io/tcp/9092/wss') ] let delayMs = 0 diff --git a/test/node.js b/test/node.js index e7eadd9..0f33615 100644 --- a/test/node.js +++ b/test/node.js @@ -7,7 +7,7 @@ const fs = require('fs') const AbortController = require('abort-controller').default const { expect } = require('aegir/utils/chai') -const multiaddr = require('multiaddr') +const { Multiaddr } = require('multiaddr') const goodbye = require('it-goodbye') const isLoopbackAddr = require('is-loopback-addr') const { collect } = require('streaming-iterables') @@ -35,7 +35,7 @@ describe('instantiate the transport', () => { describe('listen', () => { describe('ip4', () => { let ws - const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9090/ws') beforeEach(() => { ws = new WS({ upgrader: mockUpgrader }) @@ -70,7 +70,7 @@ describe('listen', () => { }) it('listen on addr with /ipfs/QmHASH', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const listener = ws.createListener((conn) => { }) await listener.listen(ma) @@ -78,7 +78,7 @@ describe('listen', () => { }) it('listen on port 0', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/0/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/0/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const listener = ws.createListener((conn) => { }) await listener.listen(ma) @@ -88,7 +88,7 @@ describe('listen', () => { }) it('listen on any Interface', async () => { - const ma = multiaddr('/ip4/0.0.0.0/tcp/0/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/0.0.0.0/tcp/0/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const listener = ws.createListener((conn) => { }) await listener.listen(ma) @@ -107,7 +107,7 @@ describe('listen', () => { }) it('getAddrs on port 0 listen', async () => { - const addr = multiaddr('/ip4/127.0.0.1/tcp/0/ws') + const addr = new Multiaddr('/ip4/127.0.0.1/tcp/0/ws') const listener = ws.createListener((conn) => { }) await listener.listen(addr) const addrs = await listener.getAddrs() @@ -117,7 +117,7 @@ describe('listen', () => { }) it('getAddrs from listening on 0.0.0.0', async () => { - const addr = multiaddr('/ip4/0.0.0.0/tcp/9003/ws') + const addr = new Multiaddr('/ip4/0.0.0.0/tcp/9003/ws') const listener = ws.createListener((conn) => { }) await listener.listen(addr) const addrs = await listener.getAddrs() @@ -126,7 +126,7 @@ describe('listen', () => { }) it('getAddrs from listening on 0.0.0.0 and port 0', async () => { - const addr = multiaddr('/ip4/0.0.0.0/tcp/0/ws') + const addr = new Multiaddr('/ip4/0.0.0.0/tcp/0/ws') const listener = ws.createListener((conn) => { }) await listener.listen(addr) const addrs = await listener.getAddrs() @@ -136,7 +136,7 @@ describe('listen', () => { }) it('getAddrs preserves p2p Id', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9090/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const listener = ws.createListener((conn) => { }) await listener.listen(ma) @@ -149,7 +149,7 @@ describe('listen', () => { describe('ip6', () => { let ws - const ma = multiaddr('/ip6/::1/tcp/9091/ws') + const ma = new Multiaddr('/ip6/::1/tcp/9091/ws') beforeEach(() => { ws = new WS({ upgrader: mockUpgrader }) @@ -184,7 +184,7 @@ describe('listen', () => { }) it('listen on addr with /ipfs/QmHASH', async () => { - const ma = multiaddr('/ip6/::1/tcp/9091/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip6/::1/tcp/9091/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const listener = ws.createListener((conn) => { }) await listener.listen(ma) await listener.close() @@ -196,7 +196,7 @@ describe('dial', () => { describe('ip4', () => { let ws let listener - const ma = multiaddr('/ip4/127.0.0.1/tcp/9091/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9091/ws') beforeEach(() => { ws = new WS({ upgrader: mockUpgrader }) @@ -216,7 +216,7 @@ describe('dial', () => { }) it('dial with p2p Id', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/9091/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9091/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const conn = await ws.dial(ma) const s = goodbye({ source: ['hey'], sink: collect }) @@ -226,7 +226,7 @@ describe('dial', () => { }) it('dial should throw on immediate abort', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/0/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/0/ws') const controller = new AbortController() const conn = ws.dial(ma, { signal: controller.signal }) @@ -236,7 +236,7 @@ describe('dial', () => { }) it('should resolve port 0', async () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/0/ws') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/0/ws') const ws = new WS({ upgrader: mockUpgrader }) // Create a Promise that resolves when a connection is handled @@ -266,7 +266,7 @@ describe('dial', () => { describe('ip4 no loopback', () => { let ws let listener - const ma = multiaddr('/ip4/0.0.0.0/tcp/0/ws') + const ma = new Multiaddr('/ip4/0.0.0.0/tcp/0/ws') beforeEach(() => { ws = new WS({ upgrader: mockUpgrader }) @@ -296,7 +296,7 @@ describe('dial', () => { describe('ip4 with wss', () => { let ws let listener - const ma = multiaddr('/ip4/127.0.0.1/tcp/9091/wss') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9091/wss') const server = https.createServer({ cert: fs.readFileSync('./test/fixtures/certificate.pem'), @@ -324,7 +324,7 @@ describe('dial', () => { describe('ip6', () => { let ws let listener - const ma = multiaddr('/ip6/::1/tcp/9091') + const ma = new Multiaddr('/ip6/::1/tcp/9091') beforeEach(() => { ws = new WS({ upgrader: mockUpgrader }) @@ -353,7 +353,7 @@ describe('dial', () => { }) it('dial with p2p Id', async () => { - const ma = multiaddr('/ip6/::1/tcp/9091/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip6/::1/tcp/9091/ws/p2p/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const conn = await ws.dial(ma) const s = goodbye({ @@ -376,19 +376,19 @@ describe('filter addrs', () => { }) it('should filter out invalid WS addresses', function () { - const ma1 = multiaddr('/ip4/127.0.0.1/tcp/9090') - const ma2 = multiaddr('/ip4/127.0.0.1/udp/9090') - const ma3 = multiaddr('/ip6/::1/tcp/80') - const ma4 = multiaddr('/dnsaddr/ipfs.io/tcp/80') + const ma1 = new Multiaddr('/ip4/127.0.0.1/tcp/9090') + const ma2 = new Multiaddr('/ip4/127.0.0.1/udp/9090') + const ma3 = new Multiaddr('/ip6/::1/tcp/80') + const ma4 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80') const valid = ws.filter([ma1, ma2, ma3, ma4]) expect(valid.length).to.equal(0) }) it('should filter correct dns address', function () { - const ma1 = multiaddr('/dnsaddr/ipfs.io/ws') - const ma2 = multiaddr('/dnsaddr/ipfs.io/tcp/80/ws') - const ma3 = multiaddr('/dnsaddr/ipfs.io/tcp/80/wss') + const ma1 = new Multiaddr('/dnsaddr/ipfs.io/ws') + const ma2 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/ws') + const ma3 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/wss') const valid = ws.filter([ma1, ma2, ma3]) expect(valid.length).to.equal(3) @@ -398,8 +398,8 @@ describe('filter addrs', () => { }) it('should filter correct dns address with ipfs id', function () { - const ma1 = multiaddr('/dnsaddr/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/dnsaddr/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/dnsaddr/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -408,8 +408,8 @@ describe('filter addrs', () => { }) it('should filter correct dns4 address', function () { - const ma1 = multiaddr('/dns4/ipfs.io/tcp/80/ws') - const ma2 = multiaddr('/dns4/ipfs.io/tcp/443/wss') + const ma1 = new Multiaddr('/dns4/ipfs.io/tcp/80/ws') + const ma2 = new Multiaddr('/dns4/ipfs.io/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -418,8 +418,8 @@ describe('filter addrs', () => { }) it('should filter correct dns6 address', function () { - const ma1 = multiaddr('/dns6/ipfs.io/tcp/80/ws') - const ma2 = multiaddr('/dns6/ipfs.io/tcp/443/wss') + const ma1 = new Multiaddr('/dns6/ipfs.io/tcp/80/ws') + const ma2 = new Multiaddr('/dns6/ipfs.io/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -428,8 +428,8 @@ describe('filter addrs', () => { }) it('should filter correct dns6 address with ipfs id', function () { - const ma1 = multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/dns6/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/dns6/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -444,18 +444,18 @@ describe('filter addrs', () => { }) it('should fail invalid WS addresses', function () { - const ma1 = multiaddr('/ip4/127.0.0.1/tcp/9090') - const ma2 = multiaddr('/ip4/127.0.0.1/udp/9090') - const ma3 = multiaddr('/ip6/::1/tcp/80') - const ma4 = multiaddr('/dnsaddr/ipfs.io/tcp/80') + const ma1 = new Multiaddr('/ip4/127.0.0.1/tcp/9090') + const ma2 = new Multiaddr('/ip4/127.0.0.1/udp/9090') + const ma3 = new Multiaddr('/ip6/::1/tcp/80') + const ma4 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80') const valid = ws.filter([ma1, ma2, ma3, ma4]) expect(valid.length).to.equal(0) }) it('should filter correct ipv4 addresses', function () { - const ma1 = multiaddr('/ip4/127.0.0.1/tcp/80/ws') - const ma2 = multiaddr('/ip4/127.0.0.1/tcp/443/wss') + const ma1 = new Multiaddr('/ip4/127.0.0.1/tcp/80/ws') + const ma2 = new Multiaddr('/ip4/127.0.0.1/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -464,8 +464,8 @@ describe('filter addrs', () => { }) it('should filter correct ipv4 addresses with ipfs id', function () { - const ma1 = multiaddr('/ip4/127.0.0.1/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/ip4/127.0.0.1/tcp/80/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/ip4/127.0.0.1/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/ip4/127.0.0.1/tcp/80/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -474,8 +474,8 @@ describe('filter addrs', () => { }) it('should filter correct ipv6 address', function () { - const ma1 = multiaddr('/ip6/::1/tcp/80/ws') - const ma2 = multiaddr('/ip6/::1/tcp/443/wss') + const ma1 = new Multiaddr('/ip6/::1/tcp/80/ws') + const ma2 = new Multiaddr('/ip6/::1/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -484,8 +484,8 @@ describe('filter addrs', () => { }) it('should filter correct ipv6 addresses with ipfs id', function () { - const ma1 = multiaddr('/ip6/::1/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/ip6/::1/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/ip6/::1/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/ip6/::1/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -494,9 +494,9 @@ describe('filter addrs', () => { }) it('should filter correct dns address', function () { - const ma1 = multiaddr('/dnsaddr/ipfs.io/ws') - const ma2 = multiaddr('/dnsaddr/ipfs.io/tcp/80/ws') - const ma3 = multiaddr('/dnsaddr/ipfs.io/tcp/80/wss') + const ma1 = new Multiaddr('/dnsaddr/ipfs.io/ws') + const ma2 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/ws') + const ma3 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/wss') const valid = ws.filter([ma1, ma2, ma3]) expect(valid.length).to.equal(3) @@ -506,8 +506,8 @@ describe('filter addrs', () => { }) it('should filter correct dns address with ipfs id', function () { - const ma1 = multiaddr('/dnsaddr/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/dnsaddr/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/dnsaddr/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/dnsaddr/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -516,8 +516,8 @@ describe('filter addrs', () => { }) it('should filter correct dns4 address', function () { - const ma1 = multiaddr('/dns4/ipfs.io/tcp/80/ws') - const ma2 = multiaddr('/dns4/ipfs.io/tcp/443/wss') + const ma1 = new Multiaddr('/dns4/ipfs.io/tcp/80/ws') + const ma2 = new Multiaddr('/dns4/ipfs.io/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -526,8 +526,8 @@ describe('filter addrs', () => { }) it('should filter correct dns6 address', function () { - const ma1 = multiaddr('/dns6/ipfs.io/tcp/80/ws') - const ma2 = multiaddr('/dns6/ipfs.io/tcp/443/wss') + const ma1 = new Multiaddr('/dns6/ipfs.io/tcp/80/ws') + const ma2 = new Multiaddr('/dns6/ipfs.io/tcp/443/wss') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -536,8 +536,8 @@ describe('filter addrs', () => { }) it('should filter correct dns6 address with ipfs id', function () { - const ma1 = multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/dns6/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma1 = new Multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/dns6/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2]) expect(valid.length).to.equal(2) @@ -546,11 +546,11 @@ describe('filter addrs', () => { }) it('should filter mixed addresses', function () { - const ma1 = multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') - const ma2 = multiaddr('/ip4/127.0.0.1/tcp/9090') - const ma3 = multiaddr('/ip4/127.0.0.1/udp/9090') - const ma4 = multiaddr('/dns6/ipfs.io/ws') - const mh5 = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw' + + const ma1 = new Multiaddr('/dns6/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma2 = new Multiaddr('/ip4/127.0.0.1/tcp/9090') + const ma3 = new Multiaddr('/ip4/127.0.0.1/udp/9090') + const ma4 = new Multiaddr('/dns6/ipfs.io/ws') + const mh5 = new Multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw' + '/p2p-circuit/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter([ma1, ma2, ma3, ma4, mh5]) @@ -560,7 +560,7 @@ describe('filter addrs', () => { }) it('filter a single addr for this transport', () => { - const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') + const ma = new Multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw') const valid = ws.filter(ma) expect(valid.length).to.equal(1)