Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
This commit is contained in:
@@ -38,7 +38,7 @@ contract CCIPIntegrationTest is Test {
|
||||
|
||||
bytes memory messageData = abi.encode(uint256(25000000000), uint256(1), uint256(block.timestamp));
|
||||
|
||||
// Send oracle update
|
||||
// Send oracle update (must be called by aggregator, which is address(this) in setUp)
|
||||
sender.sendOracleUpdate(TARGET_CHAIN_SELECTOR, 25000000000, 1, block.timestamp);
|
||||
}
|
||||
|
||||
@@ -94,6 +94,7 @@ contract CCIPIntegrationTest is Test {
|
||||
// Drain balance to cause insufficient fee
|
||||
MockLinkToken(linkToken).transfer(address(0xdead), 1000e18);
|
||||
|
||||
// Must be called by aggregator (address(this) in setUp)
|
||||
vm.expectRevert();
|
||||
sender.sendOracleUpdate(TARGET_CHAIN_SELECTOR, 25000000000, 1, block.timestamp);
|
||||
}
|
||||
@@ -101,7 +102,7 @@ contract CCIPIntegrationTest is Test {
|
||||
|
||||
// Mock contracts for testing
|
||||
contract MockRouter is IRouterClient {
|
||||
function ccipSend(uint64, EVM2AnyMessage memory) external pure returns (bytes32, uint256) {
|
||||
function ccipSend(uint64, EVM2AnyMessage memory) external payable returns (bytes32, uint256) {
|
||||
return (keccak256("mock"), 0.01e18);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user