mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 07:52:24 +00:00
Merge pull request #2707 from PR0M3TH3AN/agents/weekly/test-coverage-agent-5998265445794573406
Add unit tests for js/nostr/utils.js (test-coverage-agent)
This commit is contained in:
2 files changed
+80
No files matched your search
@@ -0,0 +1,18 @@
|
||||
# Test Coverage Agent: Completed
|
||||
|
||||
**Date:** 2026-02-25
|
||||
**Agent:** test-coverage-agent
|
||||
**Status:** Completed
|
||||
|
||||
## Summary
|
||||
- Identified `js/nostr/utils.js` as a module with 0% unit test coverage.
|
||||
- Implemented `tests/nostr/utils.test.mjs` to cover `getActiveKey` logic (100% coverage for the module).
|
||||
- Verified new tests pass locally.
|
||||
- Verified full test suite passes.
|
||||
|
||||
## Artifacts
|
||||
- `tests/nostr/utils.test.mjs` (new file)
|
||||
- `artifacts/tests-20260225/unit.log` (test run log)
|
||||
|
||||
## Next Steps
|
||||
- Continue identifying other low-coverage modules in `js/nostr/` such as `ConnectionManager.js` (requires more complex mocking).
|
||||
@@ -0,0 +1,62 @@
|
||||
/**
|
||||
* @file tests/nostr/utils.test.mjs
|
||||
* @description Unit tests for js/nostr/utils.js
|
||||
*/
|
||||
|
||||
import { test, describe } from 'node:test';
|
||||
import assert from 'node:assert';
|
||||
import { getActiveKey } from '../../js/nostr/utils.js';
|
||||
|
||||
describe('js/nostr/utils.js', () => {
|
||||
describe('getActiveKey', () => {
|
||||
test('returns ROOT key when videoRootId is present', () => {
|
||||
const video = {
|
||||
videoRootId: 'root-123',
|
||||
id: 'note-456',
|
||||
pubkey: 'pk1',
|
||||
tags: [['d', 'd-tag-val']]
|
||||
};
|
||||
const key = getActiveKey(video);
|
||||
assert.strictEqual(key, 'ROOT:root-123');
|
||||
});
|
||||
|
||||
test('returns pubkey:d key when videoRootId is missing but d-tag exists', () => {
|
||||
const video = {
|
||||
id: 'note-456',
|
||||
pubkey: 'pk1',
|
||||
tags: [['d', 'd-tag-val']]
|
||||
};
|
||||
const key = getActiveKey(video);
|
||||
assert.strictEqual(key, 'pk1:d-tag-val');
|
||||
});
|
||||
|
||||
test('returns LEGACY key when videoRootId and d-tag are missing', () => {
|
||||
const video = {
|
||||
id: 'note-456',
|
||||
pubkey: 'pk1',
|
||||
tags: [['t', 'hashtag']]
|
||||
};
|
||||
const key = getActiveKey(video);
|
||||
assert.strictEqual(key, 'LEGACY:note-456');
|
||||
});
|
||||
|
||||
test('handles missing tags array gracefully (returns LEGACY)', () => {
|
||||
const video = {
|
||||
id: 'note-789',
|
||||
pubkey: 'pk2'
|
||||
};
|
||||
const key = getActiveKey(video);
|
||||
assert.strictEqual(key, 'LEGACY:note-789');
|
||||
});
|
||||
|
||||
test('handles empty tags array gracefully (returns LEGACY)', () => {
|
||||
const video = {
|
||||
id: 'note-789',
|
||||
pubkey: 'pk2',
|
||||
tags: []
|
||||
};
|
||||
const key = getActiveKey(video);
|
||||
assert.strictEqual(key, 'LEGACY:note-789');
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user