import test from 'brittle' import fs from 'fs' import path from 'path' import os from 'os' import { loadBookmarks, upsertBookmark, removeBookmark, setBookmarkAlias, } from '../client/bookmarks.js' import { getPeersCachePath } from '../client/peerCache.js' test('bookmarks upsert alias remove', (t) => { const prev = process.env.PEARDATA_HOME const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'peardata-bm-')) process.env.PEARDATA_HOME = tmp try { t.ok(getPeersCachePath().includes(path.join('cache', 'peers.json'))) const pk = 'a'.repeat(64) upsertBookmark({ publicKeyHex: pk, alias: 'box-1' }) let list = loadBookmarks() t.is(list.length, 1) t.is(list[0].alias, 'box-1') setBookmarkAlias(pk, 'box-2') list = loadBookmarks() t.is(list[0].alias, 'box-2') removeBookmark(pk) t.is(loadBookmarks().length, 0) } finally { if (prev === undefined) delete process.env.PEARDATA_HOME else process.env.PEARDATA_HOME = prev try { fs.rmSync(tmp, { recursive: true, force: true }) } catch { // ignore } } })