unrip/test/bridge-assets.test.mjs
philipp 4adc705a2b
Some checks failed
deploy / deploy (push) Failing after 34s
Use bridge deposit time for funding activity
Proof: npm test (147 passing); npm run operator-dashboard:build; git diff --cached --check.

Assumptions: Bridge recent_deposits created_at is the authoritative source time for deposit activity; rows without created_at must be deduped to their earliest observed status instead of the latest replay ingestion.

Still fake: No fund movement or bridge migration was performed; ntfy messages already sent before this fix cannot be unsent.
2026-05-07 16:47:52 +02:00

53 lines
1.6 KiB
JavaScript

import test from 'node:test';
import assert from 'node:assert/strict';
import {
bridgeDepositAssetId,
bridgeDepositObservedAt,
intentsAssetIdFromNearTokenId,
} from '../src/core/bridge-assets.mjs';
const NBTC = 'nep141:nbtc.bridge.near';
const LEGACY_BTC = 'nep141:btc.omft.near';
const assetRegistry = new Map([
[NBTC, { assetId: NBTC }],
[LEGACY_BTC, { assetId: LEGACY_BTC }],
]);
test('intentsAssetIdFromNearTokenId normalizes NEAR token ids to verifier asset ids', () => {
assert.equal(intentsAssetIdFromNearTokenId('nbtc.bridge.near'), NBTC);
assert.equal(intentsAssetIdFromNearTokenId(NBTC), NBTC);
assert.equal(intentsAssetIdFromNearTokenId(''), null);
});
test('bridgeDepositAssetId uses credited bridge near_token_id instead of chain-only fallback', () => {
assert.equal(bridgeDepositAssetId({
near_token_id: 'btc.omft.near',
defuse_asset_identifier: 'btc:mainnet:native',
}, {
assetRegistry,
fallbackAssetId: NBTC,
}), LEGACY_BTC);
assert.equal(bridgeDepositAssetId({
near_token_id: 'nbtc.bridge.near',
defuse_asset_identifier: 'btc:mainnet:native',
}, {
assetRegistry,
fallbackAssetId: LEGACY_BTC,
}), NBTC);
});
test('bridgeDepositObservedAt preserves bridge deposit creation time', () => {
assert.equal(bridgeDepositObservedAt({
created_at: '2026-04-07T15:20:19.909Z',
}), '2026-04-07T15:20:19.909Z');
assert.equal(bridgeDepositObservedAt({
created_at: 'not-a-date',
observed_at: '2026-04-07T15:20:24.814Z',
}), '2026-04-07T15:20:24.814Z');
assert.equal(bridgeDepositObservedAt({}), null);
});