js-libp2p-tcp/test/filter.spec.js
2021-04-09 17:59:25 +03:00

42 lines
1.4 KiB
JavaScript

/* eslint-env mocha */
'use strict'
const { expect } = require('aegir/utils/chai')
const TCP = require('../src')
const multiaddr = require('multiaddr')
describe('filter addrs', () => {
const base = '/ip4/127.0.0.1'
const ipfs = '/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw'
let tcp
before(() => {
tcp = new TCP({ upgrader: {} })
})
it('filter valid addrs for this transport', () => {
const ma1 = new multiaddr.Multiaddr(base + '/tcp/9090')
const ma2 = new multiaddr.Multiaddr(base + '/udp/9090')
const ma3 = new multiaddr.Multiaddr(base + '/tcp/9090/http')
const ma4 = new multiaddr.Multiaddr(base + '/tcp/9090/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
const ma5 = new multiaddr.Multiaddr(base + '/tcp/9090/http' + ipfs)
const ma6 = new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/9090/p2p-circuit' + ipfs)
const ma7 = new multiaddr.Multiaddr('/dns4/libp2p.io/tcp/9090')
const ma8 = new multiaddr.Multiaddr('/dnsaddr/libp2p.io/tcp/9090')
const valid = tcp.filter([ma1, ma2, ma3, ma4, ma5, ma6, ma7, ma8])
expect(valid.length).to.equal(4)
expect(valid[0]).to.deep.equal(ma1)
expect(valid[1]).to.deep.equal(ma4)
})
it('filter a single addr for this transport', () => {
const ma1 = new multiaddr.Multiaddr(base + '/tcp/9090')
const valid = tcp.filter(ma1)
expect(valid.length).to.equal(1)
expect(valid[0]).to.eql(ma1)
})
})