2020-07-15 11:21:34 +02:00
|
|
|
/* eslint-env mocha */
|
|
|
|
'use strict'
|
|
|
|
|
2020-08-07 16:40:19 +01:00
|
|
|
const { expect } = require('aegir/utils/chai')
|
2020-07-15 11:21:34 +02:00
|
|
|
const multiaddr = require('multiaddr')
|
|
|
|
|
|
|
|
const arrayEquals = require('../src/array-equals')
|
|
|
|
|
|
|
|
describe('non primitive array equals', () => {
|
|
|
|
it('returns true if two arrays of multiaddrs are equal', () => {
|
|
|
|
const a = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
const b = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
expect(arrayEquals(a, b)).to.eql(true)
|
|
|
|
})
|
|
|
|
|
|
|
|
it('returns true if two arrays of multiaddrs have the same content but different orders', () => {
|
|
|
|
const a = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
const b = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
expect(arrayEquals(a, b)).to.eql(true)
|
|
|
|
})
|
|
|
|
|
|
|
|
it('returns false if two arrays of multiaddrs are different', () => {
|
|
|
|
const a = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
const b = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8001'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
expect(arrayEquals(a, b)).to.eql(false)
|
|
|
|
})
|
|
|
|
|
|
|
|
it('returns false if two arrays of multiaddrs are partially equal, but different lengths', () => {
|
|
|
|
const a = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/3000/ws'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
const b = [
|
2021-04-09 18:12:25 +03:00
|
|
|
new multiaddr.Multiaddr('/ip4/127.0.0.1/tcp/8000'),
|
|
|
|
new multiaddr.Multiaddr('/dns4/test.libp2p.io')
|
2020-07-15 11:21:34 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
expect(arrayEquals(a, b)).to.eql(false)
|
|
|
|
})
|
|
|
|
})
|