Files
smom-dbis-138/script/DeployMockLinkToken.s.sol

41 lines
1.4 KiB
Solidity
Raw Permalink Normal View History

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
import {Script, console} from "forge-std/Script.sol";
import {MockLinkToken} from "../contracts/tokens/MockLinkToken.sol";
/**
* @title Deploy Mock LINK Token
* @notice Deploy a mock LINK token for testing and development
*/
contract DeployMockLinkToken is Script {
function run() external {
uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY");
address deployer = vm.addr(deployerPrivateKey);
console.log("Deploying Mock LINK Token with address:", deployer);
vm.startBroadcast(deployerPrivateKey);
MockLinkToken linkToken = new MockLinkToken();
console.log("Mock LINK Token deployed at:", address(linkToken));
console.log("Name:", linkToken.name());
console.log("Symbol:", linkToken.symbol());
console.log("Decimals:", linkToken.decimals());
// Mint initial supply to deployer (optional)
uint256 initialSupply = 1000000e18; // 1M LINK
linkToken.mint(deployer, initialSupply);
console.log("Minted", initialSupply / 1e18, "LINK to deployer");
vm.stopBroadcast();
console.log("\n=== Deployment Summary ===");
console.log("Mock LINK Token:", address(linkToken));
console.log("Deployer:", deployer);
console.log("Initial Supply:", initialSupply / 1e18, "LINK");
}
}