-
-
Notifications
You must be signed in to change notification settings - Fork 59
/
ERC20Properties.sol
43 lines (37 loc) · 1.49 KB
/
ERC20Properties.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// SPDX-License-Identifier: WTFPL
pragma solidity ^0.8.28;
import {VyperDeployer} from "utils/VyperDeployer.sol";
import {ITokenMock} from "properties/ERC20/external/util/ITokenMock.sol";
import {CryticERC20ExternalBasicProperties} from "properties/ERC20/external/properties/ERC20ExternalBasicProperties.sol";
import {CryticERC20ExternalBurnableProperties} from "properties/ERC20/external/properties/ERC20ExternalBurnableProperties.sol";
import {CryticERC20ExternalMintableProperties} from "properties/ERC20/external/properties/ERC20ExternalMintableProperties.sol";
contract CryticERC20ExternalHarness is
CryticERC20ExternalBasicProperties,
CryticERC20ExternalBurnableProperties,
CryticERC20ExternalMintableProperties
{
string private constant _NAME = "MyToken";
string private constant _SYMBOL = "WAGMI";
uint8 private constant _DECIMALS = 18;
string private constant _NAME_EIP712 = "MyToken";
string private constant _VERSION_EIP712 = "1";
uint256 private constant _INITIAL_SUPPLY = type(uint8).max;
VyperDeployer private vyperDeployer = new VyperDeployer();
constructor() {
bytes memory args = abi.encode(
_NAME,
_SYMBOL,
_DECIMALS,
_INITIAL_SUPPLY,
_NAME_EIP712,
_VERSION_EIP712
);
token = ITokenMock(
vyperDeployer.deployContract(
"src/snekmate/tokens/mocks/",
"erc20_mock",
args
)
);
}
}