diff --git a/.gas-snapshot b/.gas-snapshot index a71ce10..57feef0 100644 --- a/.gas-snapshot +++ b/.gas-snapshot @@ -11,4 +11,5 @@ GenerateTokensTest:test_RevertWhen_SenderIsNotController() (gas: 14930) MiniMeTokenTest:testDeployment() (gas: 45598) ReentrancyTest:testAttack() (gas: 229394) TransferTest:testDeployment() (gas: 45814) -TransferTest:testTransfer() (gas: 201218) \ No newline at end of file +TransferTest:testDoubleTransfer() (gas: 92339) +TransferTest:testTransfer() (gas: 81675) diff --git a/test/MiniMeToken.t.sol b/test/MiniMeToken.t.sol index d4d675b..8257398 100644 --- a/test/MiniMeToken.t.sol +++ b/test/MiniMeToken.t.sol @@ -71,6 +71,24 @@ contract TransferTest is MiniMeTokenTest { MiniMeTokenTest.setUp(); } + function testDoubleTransfer() public { + vm.pauseGasMetering(); + + _generateTokens(accounts[0], 10); + vm.roll(block.number + 1); + vm.startPrank(accounts[0]); + vm.resumeGasMetering(); + minimeToken.transfer(accounts[1], 2); + minimeToken.transfer(accounts[1], 2); + vm.pauseGasMetering(); + vm.stopPrank(); + + assertEq(minimeToken.balanceOf(accounts[0]), 6); + assertEq(minimeToken.balanceOf(accounts[1]), 4); + + vm.resumeGasMetering(); + } + function testTransfer() public { vm.pauseGasMetering(); uint256 currentBlock = block.number;