mirror of
https://github.com/fluencelabs/js-libp2p-websockets
synced 2025-06-14 19:21:40 +00:00
134
test/node.js
134
test/node.js
@ -30,6 +30,7 @@ describe('listen', () => {
|
||||
|
||||
it('listen, check for callback', (done) => {
|
||||
const listener = ws.createListener((conn) => {})
|
||||
|
||||
listener.listen(ma, () => {
|
||||
listener.close(done)
|
||||
})
|
||||
@ -37,24 +38,30 @@ describe('listen', () => {
|
||||
|
||||
it('listen, check for listening event', (done) => {
|
||||
const listener = ws.createListener((conn) => {})
|
||||
|
||||
listener.on('listening', () => {
|
||||
listener.close(done)
|
||||
})
|
||||
|
||||
listener.listen(ma)
|
||||
})
|
||||
|
||||
it('listen, check for the close event', (done) => {
|
||||
const listener = ws.createListener((conn) => {})
|
||||
|
||||
listener.on('listening', () => {
|
||||
listener.on('close', done)
|
||||
listener.close()
|
||||
})
|
||||
|
||||
listener.listen(ma)
|
||||
})
|
||||
|
||||
it('listen on addr with /ipfs/QmHASH', (done) => {
|
||||
const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
|
||||
|
||||
const listener = ws.createListener((conn) => {})
|
||||
|
||||
listener.listen(ma, () => {
|
||||
listener.close(done)
|
||||
})
|
||||
@ -77,7 +84,8 @@ describe('listen', () => {
|
||||
})
|
||||
|
||||
it('getAddrs', (done) => {
|
||||
const listener = ws.createListener((conn) => {})
|
||||
const listener = ws.createListener((conn) => {
|
||||
})
|
||||
listener.listen(ma, () => {
|
||||
listener.getAddrs((err, addrs) => {
|
||||
expect(err).to.not.exist()
|
||||
@ -104,6 +112,7 @@ describe('listen', () => {
|
||||
const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
|
||||
|
||||
const listener = ws.createListener((conn) => {})
|
||||
|
||||
listener.listen(ma, () => {
|
||||
listener.getAddrs((err, addrs) => {
|
||||
expect(err).to.not.exist()
|
||||
@ -177,17 +186,120 @@ describe('filter addrs', () => {
|
||||
ws = new WS()
|
||||
})
|
||||
|
||||
it('filter valid addrs for this transport', (done) => {
|
||||
const mh1 = multiaddr('/ip4/127.0.0.1/tcp/9090')
|
||||
const mh2 = multiaddr('/ip4/127.0.0.1/udp/9090')
|
||||
const mh3 = multiaddr('/ip4/127.0.0.1/tcp/9090/ws')
|
||||
const mh4 = multiaddr('/ip4/127.0.0.1/tcp/9090/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
|
||||
describe('filter valid addrs for this transport', function () {
|
||||
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('/dns/ipfs.io/tcp/80')
|
||||
|
||||
const valid = ws.filter([mh1, mh2, mh3, mh4])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(mh3)
|
||||
expect(valid[1]).to.deep.equal(mh4)
|
||||
done()
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
it('should filter correct ipv6 address', function () {
|
||||
const ma1 = multiaddr('/ip6/::1/tcp/80/ws')
|
||||
const ma2 = multiaddr('/ip6/::1/tcp/443/wss')
|
||||
|
||||
const valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
it('should filter correct dns address', function () {
|
||||
const ma1 = multiaddr('/dns/ipfs.io/ws')
|
||||
const ma2 = multiaddr('/dns/ipfs.io/tcp/80/ws')
|
||||
const ma3 = multiaddr('/dns/ipfs.io/tcp/80/wss')
|
||||
|
||||
const valid = ws.filter([ma1, ma2, ma3])
|
||||
expect(valid.length).to.equal(3)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
expect(valid[2]).to.deep.equal(ma3)
|
||||
})
|
||||
|
||||
it('should filter correct dns address with ipfs id', function () {
|
||||
const ma1 = multiaddr('/dns/ipfs.io/tcp/80/ws/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
|
||||
const ma2 = multiaddr('/dns/ipfs.io/tcp/443/wss/ipfs/Qmb6owHp6eaWArVbcJJbQSyifyJBttMMjYV76N2hMbf5Vw')
|
||||
|
||||
const valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma2)
|
||||
})
|
||||
|
||||
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 valid = ws.filter([ma1, ma2, ma3, ma4])
|
||||
expect(valid.length).to.equal(2)
|
||||
expect(valid[0]).to.deep.equal(ma1)
|
||||
expect(valid[1]).to.deep.equal(ma4)
|
||||
})
|
||||
})
|
||||
|
||||
it('filter a single addr for this transport', (done) => {
|
||||
|
Reference in New Issue
Block a user