Flash unwinder contracts and scripts, relay lane tuning, trustless bridge and token-aggregation updates.
Made-with: Cursor
This commit is contained in:
@@ -11,6 +11,7 @@ import { existsSync } from 'fs';
|
||||
import { join, dirname } from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
import { ethers } from 'ethers';
|
||||
import { MessageQueue } from './src/MessageQueue.js';
|
||||
import { RelayService } from './src/RelayService.js';
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
@@ -92,5 +93,20 @@ const rejected = relay.evaluateMessageScope({
|
||||
});
|
||||
assert(rejected.inScope === false, 'WETH message should be rejected by the cW worker scope');
|
||||
|
||||
const queue = new MessageQueue(logger);
|
||||
const queuedMessage = {
|
||||
messageId: '0xtest-message',
|
||||
sender: '0x152ed3e9912161b76bdfd368d0c84b7c31c10de7',
|
||||
receiver: cwReceiver,
|
||||
data: '0x',
|
||||
tokenAmounts: []
|
||||
};
|
||||
await queue.add(queuedMessage);
|
||||
const inFlightMessage = await queue.getNext();
|
||||
assert(inFlightMessage?.messageId === queuedMessage.messageId, 'getNext should return the queued message');
|
||||
await queue.retry(queuedMessage.messageId);
|
||||
const retriedMessage = await queue.getNext();
|
||||
assert(retriedMessage?.messageId === queuedMessage.messageId, 'retry should requeue the original message payload');
|
||||
|
||||
console.log('OK: relay service structure valid');
|
||||
process.exit(0);
|
||||
|
||||
Reference in New Issue
Block a user