From 1fcd354f1b5addf89e2929525c4d6920ad06f10e Mon Sep 17 00:00:00 2001 From: matcha Date: Sun, 4 Oct 2026 02:46:42 +0000 Subject: [PATCH] Consolidate Persimmons source --- extension/tests/session.test.mjs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 extension/tests/session.test.mjs diff --git a/extension/tests/session.test.mjs b/extension/tests/session.test.mjs new file mode 100644 index 0000000..2d69237 --- /dev/null +++ b/extension/tests/session.test.mjs @@ -0,0 +1,27 @@ +import test from 'node:test'; +import assert from 'node:assert/strict'; +import {VaultSession} from '../vault-session.mjs'; +import {updateState} from '../version.mjs'; + +test('vault session fails closed and honors bounded policies', () => { + let now = 1000; + const session = new VaultSession(() => now); + const key = {extractable:false}; + session.set(key, 'owner-a', '5'); + assert.equal(session.get('owner-a'), key); + assert.equal(session.get('owner-b'), null); + session.set(key, 'owner-a', '5'); + now += 5 * 60000; + assert.equal(session.get('owner-a'), null); + session.set(key, 'owner-a', 'close'); + session.closed(); + assert.equal(session.get('owner-a'), null); +}); + +test('version UI only says something when an update is actually available', () => { + assert.equal(updateState('0.4.4','0.4.4'),''); + assert.equal(updateState('0.4.5','0.4.4'),''); + assert.equal(updateState('0.4.4','0.4.5'),'Update available'); + assert.equal(updateState('0.4.4','0.4.4.0'),''); + assert.equal(updateState('bogus','0.4.5'),''); +});