|
2 | 2 | /* eslint-env mocha */ |
3 | 3 | import { expect } from 'aegir/chai' |
4 | 4 | import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string' |
5 | | -import { multiaddr, isMultiaddr, fromNodeAddress, isName } from '../src/index.js' |
| 5 | +import { multiaddr, isMultiaddr, fromNodeAddress, isName, fromTuples, fromStringTuples } from '../src/index.js' |
6 | 6 | import { codes } from '../src/protocols-table.js' |
7 | 7 | import type { Multiaddr } from '../src/index.js' |
8 | 8 |
|
@@ -949,6 +949,28 @@ describe('helpers', () => { |
949 | 949 | }) |
950 | 950 | }) |
951 | 951 |
|
| 952 | + describe('.fromTuples', () => { |
| 953 | + it('should create a multiaddr from a list of tuples', () => { |
| 954 | + const ma = multiaddr('/ip4/0.0.0.0') |
| 955 | + const tuples = ma.tuples() |
| 956 | + tuples.push([0x06, Uint8Array.from([0, 100])]) |
| 957 | + |
| 958 | + const ma2 = fromTuples(tuples) |
| 959 | + expect(ma2.toString()).to.equal('/ip4/0.0.0.0/tcp/100') |
| 960 | + }) |
| 961 | + }) |
| 962 | + |
| 963 | + describe('.fromStringTuples', () => { |
| 964 | + it('should create a multiaddr from a list of string tuples', () => { |
| 965 | + const ma = multiaddr('/ip4/0.0.0.0') |
| 966 | + const tuples = ma.stringTuples() |
| 967 | + tuples.push([0x06, '100']) |
| 968 | + |
| 969 | + const ma2 = fromStringTuples(tuples) |
| 970 | + expect(ma2.toString()).to.equal('/ip4/0.0.0.0/tcp/100') |
| 971 | + }) |
| 972 | + }) |
| 973 | + |
952 | 974 | describe('.isThinWaistAddress', () => { |
953 | 975 | const families = ['ip4', 'ip6'] |
954 | 976 | const transports = ['tcp', 'udp'] |
|
0 commit comments