PHP 7.4.33
Preview: decoder-test.js Size: 818 B
/var/www/gtechmarathon2026.bitkit.dk/httpdocs/node_modules/postgres-bytea/decoder-test.js
'use strict'

const test = require('tape-promise').default(require('tape'))

const { Readable } = require('stream')
const streamToPromise = require('stream-to-promise')
const Decoder = require('./decoder')

test('decoder', (t) => {
  t.test('input cuts at chunk boundary', async (t) => {
    const input = [...Buffer.from('\\\\x616263').values()]

    for (let i = 1; i < input.length; i++) {
      const result = await streamToPromise(Readable.from([input.slice(0, i), input.slice(i)].map(Buffer.from)).pipe(new Decoder()))
      t.equal(result.toString(), 'abc', `i=${i}`)
    }
  })

  t.test('fails if not prefixed with \\\\x', async (t) => {
    const dest = new Decoder()
    const promise = streamToPromise(dest)

    dest.write(Buffer.from('616263'))

    await t.rejects(promise, /prefix/)
  })

  t.end()
})

Directory Contents

Dirs: 0 × Files: 10
Name Size Perms Modified Actions
411 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
975 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
818 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.53 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
774 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
285 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
140 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.08 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
708 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
2.48 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).