Files
smom-dbis-138/script/reserve/CheckUpkeep.s.sol
defiQUG 8dc7562702
Some checks failed
Verify Deployment / Verify Deployment (push) Has been cancelled
CI/CD Pipeline / Solidity Contracts (push) Has been cancelled
CI/CD Pipeline / Security Scanning (push) Has been cancelled
CI/CD Pipeline / Lint and Format (push) Has been cancelled
CI/CD Pipeline / Terraform Validation (push) Has been cancelled
CI/CD Pipeline / Kubernetes Validation (push) Has been cancelled
Validation / validate-genesis (push) Has been cancelled
Validation / validate-terraform (push) Has been cancelled
Validation / validate-kubernetes (push) Has been cancelled
Validation / validate-smart-contracts (push) Has been cancelled
Validation / validate-security (push) Has been cancelled
Validation / validate-documentation (push) Has been cancelled
Update OpenZeppelin contracts submodule to a dirty state
2025-12-12 16:25:54 -08:00

47 lines
1.5 KiB
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "forge-std/Script.sol";
import "../../contracts/reserve/PriceFeedKeeper.sol";
/**
* @title CheckUpkeep
* @notice Script to check if upkeep is needed
* @dev Read-only script to check keeper status
*/
contract CheckUpkeep is Script {
function run() external view {
address keeperAddress = vm.envAddress("PRICE_FEED_KEEPER_ADDRESS");
PriceFeedKeeper keeper = PriceFeedKeeper(keeperAddress);
console.log("=== Check Keeper Upkeep ===");
console.log("Keeper Address:", keeperAddress);
console.log("");
// Check if upkeep is needed
(bool needsUpdate, address[] memory assets) = keeper.checkUpkeep();
console.log("Needs Update:", needsUpdate);
console.log("Assets needing update:", assets.length);
if (assets.length > 0) {
console.log("");
console.log("Assets:");
for (uint256 i = 0; i < assets.length; i++) {
bool assetNeedsUpdate = keeper.needsUpdate(assets[i]);
console.log(" ", i + 1, ":", assets[i], "- Needs Update:", assetNeedsUpdate);
}
}
// Get tracked assets
address[] memory trackedAssets = keeper.getTrackedAssets();
console.log("");
console.log("Total Tracked Assets:", trackedAssets.length);
// Get update interval
uint256 updateInterval = keeper.updateInterval();
console.log("Update Interval:", updateInterval, "seconds");
}
}