42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
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
|
|
}
|
|
}
|
|
})
|