Created
February 8, 2025 21:10
-
-
Save Luancaster13/8e014e6df8344bfd1ca5d497fa371280 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.28+commit.7893614a.js&optimize=undefined&runs=undefined&gist=
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: GPL-3.0 | |
pragma solidity >=0.4.22 <0.9.0; | |
// This import is automatically injected by Remix | |
import "remix_tests.sol"; | |
// This import is required to use custom transaction context | |
// Although it may fail compilation in 'Solidity Compiler' plugin | |
// But it will work fine in 'Solidity Unit Testing' plugin | |
import "remix_accounts.sol"; | |
import "../contracts/EEIP4337.sol.sol"; | |
// File name has to end with '_test.sol', this file can contain more than one testSuite contracts | |
contract testSuite { | |
/// 'beforeAll' runs before all other tests | |
/// More special functions are: 'beforeEach', 'beforeAll', 'afterEach' & 'afterAll' | |
function beforeAll() public { | |
// <instantiate contract> | |
Assert.equal(uint(1), uint(1), "1 should be equal to 1"); | |
} | |
function checkSuccess() public { | |
// Use 'Assert' methods: https://remix-ide.readthedocs.io/en/latest/assert_library.html | |
Assert.ok(2 == 2, 'should be true'); | |
Assert.greaterThan(uint(2), uint(1), "2 should be greater than to 1"); | |
Assert.lesserThan(uint(2), uint(3), "2 should be lesser than to 3"); | |
} | |
function checkSuccess2() public pure returns (bool) { | |
// Use the return value (true or false) to test the contract | |
return true; | |
} | |
function checkFailure() public { | |
Assert.notEqual(uint(1), uint(1), "1 should not be equal to 1"); | |
} | |
/// Custom Transaction Context: https://remix-ide.readthedocs.io/en/latest/unittesting.html#customization | |
/// #sender: account-1 | |
/// #value: 100 | |
function checkSenderAndValue() public payable { | |
// account index varies 0-9, value is in wei | |
Assert.equal(msg.sender, TestsAccounts.getAccount(1), "Invalid sender"); | |
Assert.equal(msg.value, 100, "Invalid value"); | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment