This commit is contained in:
Dorian
2026-04-11 19:46:37 +01:00
parent 52752a92bf
commit 32e6c19f72
44 changed files with 5511 additions and 39 deletions
@@ -31,10 +31,12 @@ describe('useNostr', () => {
beforeEach(() => {
vi.clearAllMocks()
localStorage.clear()
sessionStorage.clear()
})
afterEach(() => {
localStorage.clear()
sessionStorage.clear()
})
it('isLoggedIn is false when no pubkey or bot stored', async () => {
@@ -50,7 +52,7 @@ describe('useNostr', () => {
localStorage.setItem('bf_pubkey', JSON.stringify('testpub'))
localStorage.setItem('bf_bot', JSON.stringify({ id: 'b1', name: 'Bot' }))
localStorage.setItem('bf_pic', JSON.stringify('https://example.com/pic.jpg'))
localStorage.setItem('bf_nsec', 'secretkey')
sessionStorage.setItem('bf_nsec', 'secretkey')
vi.resetModules()
const { useNostr } = await import('../useNostr')
@@ -61,7 +63,7 @@ describe('useNostr', () => {
expect(localStorage.getItem('bf_pubkey')).toBeNull()
expect(localStorage.getItem('bf_bot')).toBeNull()
expect(localStorage.getItem('bf_pic')).toBeNull()
expect(localStorage.getItem('bf_nsec')).toBeNull()
expect(sessionStorage.getItem('bf_nsec')).toBeNull()
expect(mockSetToken).toHaveBeenCalledWith(null)
})
@@ -80,8 +82,8 @@ describe('useNostr', () => {
expect(hasStoredKey.value).toBe(false)
})
it('hasStoredKey is true when nsec pre-set in localStorage', async () => {
localStorage.setItem('bf_nsec', 'test-nsec')
it('hasStoredKey is true when nsec pre-set in sessionStorage', async () => {
sessionStorage.setItem('bf_nsec', 'test-nsec')
vi.resetModules()
const { useNostr } = await import('../useNostr')
const { hasStoredKey } = useNostr()
@@ -95,13 +97,13 @@ describe('useNostr', () => {
expect(getStoredNsec()).toBeNull()
})
it('persistKey saves session nsec to localStorage', async () => {
it('persistKey saves session nsec to sessionStorage', async () => {
vi.resetModules()
const { useNostr } = await import('../useNostr')
const { persistKey } = useNostr()
// Without a session key, persist should be a no-op
persistKey()
expect(localStorage.getItem('bf_nsec')).toBeNull()
expect(sessionStorage.getItem('bf_nsec')).toBeNull()
})
it('pubkey and bot are readonly refs', async () => {