-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathechidna_config.yaml
59 lines (42 loc) · 1.98 KB
/
echidna_config.yaml
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#codeSize max code size for deployed contratcs (default 24576, per EIP-170)
codeSize: 224576
#whether ot not to use the multi-abi mode of testing
#it’s not working for us, see: https://github.com/crytic/echidna/issues/547
#multi-abi: true
#balanceAddr is default balance for addresses
balanceAddr: 0xffffffffffffffffffffffff
#balanceContract overrides balanceAddr for the contract address (2^128 = ~3e38)
balanceContract: 0xffffffffffffffffffffffffffffffffffffffffffffffff
#testLimit is the number of test sequences to run
testLimit: 20000000
#seqLen defines how many transactions are in a test sequence
seqLen: 300
#shrinkLimit determines how much effort is spent shrinking failing sequences
shrinkLimit: 2500
#propMaxGas defines gas cost at which a property fails
propMaxGas: 1000000000
#testMaxGas is a gas limit; does not cause failure, but terminates sequence
testMaxGas: 1000000000
# list of methods to filter
#filterFunctions: ["openCdpExt"]
# by default, blacklist methods in filterFunctions
#filterBlacklist: false
#stopOnFail makes echidna terminate as soon as any property fails and has been shrunk
stopOnFail: false
#coverage controls coverage guided testing
coverage: true
# list of file formats to save coverage reports in; default is all possible formats
coverageFormats: ["lcov", "html"]
#directory to save the corpus; by default is disabled
corpusDir: "test/invariants/_corpus/echidna/default/_data/corpus"
# constants for corpus mutations (for experimentation only)
#mutConsts: [100, 1, 1]
#remappings
cryticArgs: ["--solc-remaps", "@crytic/properties/=lib/properties/ forge-std/=lib/forge-std/src/ ds-test/=lib/forge-std/lib/ds-test/src/ openzeppelin/=lib/openzeppelin-contracts/contracts/", "--compile-libraries=(Pretty,0xf01),(Strings,0xf02)"]
deployContracts: [["0xf01", "Pretty"], ["0xf02", "Strings"]]
# maximum value to send to payable functions
maxValue: 100000000000000000000000 # 100000 eth
#quiet produces (much) less verbose output
quiet: false
# concurrent workers
workers: 10