Files
orca/src/renderer/src/web/web-pairing.test.ts
T
2026-05-29 16:39:52 -07:00

28 lines
782 B
TypeScript

import { describe, expect, it } from 'vitest'
import { parseWebPairingInput, type WebPairingOffer } from './web-pairing'
describe('web pairing input', () => {
const offer: WebPairingOffer = {
v: 2,
endpoint: 'ws://127.0.0.1:6768',
deviceToken: 'token',
publicKeyB64: 'public-key'
}
function encodeOffer() {
return Buffer.from(JSON.stringify(offer), 'utf-8')
.toString('base64')
.replace(/\+/g, '-')
.replace(/\//g, '_')
.replace(/=+$/, '')
}
it('parses query-form pairing URLs', () => {
expect(parseWebPairingInput(`orca://pair?code=${encodeOffer()}`)).toEqual(offer)
})
it('still parses legacy hash-form pairing URLs', () => {
expect(parseWebPairingInput(`orca://pair#${encodeOffer()}`)).toEqual(offer)
})
})