Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 1 addition & 14 deletions packages/interface-compliance-tests/src/transport/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import pRetry from 'p-retry'
import pWaitFor from 'p-wait-for'
import { raceSignal } from 'race-signal'
import { isValidTick } from '../is-valid-tick.js'
import { createPeer, getTransportManager, getUpgrader, slowNetwork } from './utils.js'
import { createPeer, getTransportManager, getUpgrader } from './utils.js'
import type { TestSetup } from '../index.js'
import type { Echo } from '@libp2p/echo'
import type { Connection, Libp2p, Stream, StreamHandler } from '@libp2p/interface'
Expand Down Expand Up @@ -130,19 +130,6 @@ export default (common: TestSetup<TransportTestFixtures>): void => {
.with.property('name', 'AbortError')
})

it('abort while dialing throws AbortError', async () => {
({ dialer, listener, dialAddrs } = await getSetup(common))
slowNetwork(dialer, 100)

const controller = new AbortController()
setTimeout(() => { controller.abort() }, 50)

await expect(dialer.dial(dialAddrs[0], {
signal: controller.signal
})).to.eventually.be.rejected()
.with.property('name', 'AbortError')
})

it('should close all streams when the connection closes', async () => {
({ dialer, listener, dialAddrs } = await getSetup(common))

Expand Down
33 changes: 0 additions & 33 deletions packages/interface-compliance-tests/src/transport/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
import { echo } from '@libp2p/echo'
import { memory } from '@libp2p/memory'
import { plaintext } from '@libp2p/plaintext'
import delay from 'delay'
import map from 'it-map'
import { createLibp2p } from 'libp2p'
import { mockMuxer } from '../mocks/muxer.js'
import type { Echo } from '@libp2p/echo'
Expand Down Expand Up @@ -36,37 +34,6 @@ export async function createPeer (config: Partial<Libp2pOptions> = {}): Promise<
})
}

/**
* Monkey patch the upgrader in the passed libp2p to add latency to any
* multiaddr connections upgraded to connections - this is to work with
* transports that have their own muxers/encrypters and do not support
* connection protection
*/
export function slowNetwork (libp2p: any, latency: number): void {
const upgrader: Upgrader = getUpgrader(libp2p)

const originalUpgradeInbound = upgrader.upgradeInbound.bind(upgrader)
const originalUpgradeOutbound = upgrader.upgradeOutbound.bind(upgrader)

upgrader.upgradeInbound = async (maConn, opts) => {
maConn.source = map(maConn.source, async (buf) => {
await delay(latency)
return buf
})

return originalUpgradeInbound(maConn, opts)
}

upgrader.upgradeOutbound = async (maConn, opts) => {
maConn.source = map(maConn.source, async (buf) => {
await delay(latency)
return buf
})

return originalUpgradeOutbound(maConn, opts)
}
}

export function getUpgrader (libp2p: any): Upgrader {
return libp2p.components.upgrader
}
Expand Down