pragma solidity ^0.8.24;
import {Test} from "forge-std/Test.sol";
import {BriTechToken} from "../src/briTechToken.sol";
contract BriTechTokenTest is Test {
BriTechToken public briToken;
address owner;
address user1 = makeAddr("user1");
function setUp() public {
briToken = new BriTechToken();
owner = briToken.owner();
}
function test_uncappedMinting() public {
uint256 mintAmount = 10_000_000 * 1e18;
assertEq(briToken.totalSupply(), 0, "Initial total supply should be 0");
vm.startPrank(owner);
briToken.mint();
assertEq(briToken.totalSupply(), mintAmount, "Total supply should be mintAmount after first mint");
assertEq(briToken.balanceOf(owner), mintAmount, "Owner balance should be mintAmount after first mint");
briToken.mint();
assertEq(briToken.totalSupply(), mintAmount * 2, "Total supply should be 2 * mintAmount after second mint");
assertEq(briToken.balanceOf(owner), mintAmount * 2, "Owner balance should be 2 * mintAmount after second mint");
vm.stopPrank();
}
+ constructor() ERC20("BriTechLabs", "BTT") Ownable(msg.sender) {
+ _mint(msg.sender, 10_000_000 * 1e18);
+ }
- constructor() ERC20("BriTechLabs", "BTT") Ownable(msg.sender) {}
-
- function mint() public onlyOwner {
- _mint(owner(), 10_000_000 * 1e18);
- }