mirror of
https://github.com/nbd-wtf/nostr-tools.git
synced 2025-12-08 16:28:49 +00:00
correctly wait until connection to a relay is established
This commit is contained in:
@@ -1,15 +1,10 @@
|
|||||||
import { test, expect, afterEach, beforeEach } from 'bun:test'
|
import { afterEach, expect, test } from 'bun:test'
|
||||||
|
|
||||||
import { finalizeEvent } from './pure.ts'
|
import { finalizeEvent, generateSecretKey, getPublicKey } from './pure.ts'
|
||||||
import { generateSecretKey, getPublicKey } from './pure.ts'
|
import { Relay, relayConnect } from './relay.ts'
|
||||||
import { Relay } from './relay.ts'
|
|
||||||
|
|
||||||
let relay = new Relay('wss://public.relaying.io')
|
let relay = new Relay('wss://public.relaying.io')
|
||||||
|
|
||||||
beforeEach(() => {
|
|
||||||
relay.connect()
|
|
||||||
})
|
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
relay.close()
|
relay.close()
|
||||||
})
|
})
|
||||||
@@ -19,7 +14,14 @@ test('connectivity', async () => {
|
|||||||
expect(relay.connected).toBeTrue()
|
expect(relay.connected).toBeTrue()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test('connectivity, with relayConnect()', async () => {
|
||||||
|
const relay = await relayConnect('wss://public.relaying.io')
|
||||||
|
expect(relay.connected).toBeTrue()
|
||||||
|
})
|
||||||
|
|
||||||
test('querying', async () => {
|
test('querying', async () => {
|
||||||
|
await relay.connect()
|
||||||
|
|
||||||
let resolve1: () => void
|
let resolve1: () => void
|
||||||
let resolve2: () => void
|
let resolve2: () => void
|
||||||
|
|
||||||
@@ -57,6 +59,8 @@ test('querying', async () => {
|
|||||||
}, 10000)
|
}, 10000)
|
||||||
|
|
||||||
test('listening and publishing and closing', async () => {
|
test('listening and publishing and closing', async () => {
|
||||||
|
await relay.connect()
|
||||||
|
|
||||||
let sk = generateSecretKey()
|
let sk = generateSecretKey()
|
||||||
let pk = getPublicKey(sk)
|
let pk = getPublicKey(sk)
|
||||||
var resolve1: (_: void) => void
|
var resolve1: (_: void) => void
|
||||||
|
|||||||
4
relay.ts
4
relay.ts
@@ -7,9 +7,9 @@ import { Queue, normalizeURL } from './utils.ts'
|
|||||||
import { nip42 } from './index.ts'
|
import { nip42 } from './index.ts'
|
||||||
import { yieldThread } from './helpers.ts'
|
import { yieldThread } from './helpers.ts'
|
||||||
|
|
||||||
export function relayConnect(url: string) {
|
export async function relayConnect(url: string) {
|
||||||
const relay = new Relay(url)
|
const relay = new Relay(url)
|
||||||
relay.connect()
|
await relay.connect()
|
||||||
return relay
|
return relay
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user