oracles-presale/audit/test
BokkyPooBah 862367cbdc Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
..
testchain/keystore Testing 2017-11-13 00:12:52 +11:00
00_runGeth.sh Testing 2017-11-13 00:12:52 +11:00
01_test1.sh Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
PresaleOracles_flat.js Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
PresaleOracles_flat.sol Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
README.md Testing 2017-11-13 00:12:52 +11:00
deploymentData.txt Audit completed 2017-11-15 14:51:59 +11:00
functions.js Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
genesis.json Testing 2017-11-13 00:12:52 +11:00
settings.txt Testing 2017-11-13 00:12:52 +11:00
test1output.txt Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
test1results.txt Reviewed and retested with new changes 2017-11-15 20:40:22 +11:00
testpassword Testing 2017-11-13 00:12:52 +11:00

README.md

Contract - Testing



Table of contents



Requirements

  • The tests works on OS/X. Should work in Linux. May work in Windows with Cygwin
  • Geth/v1.7.2-stable-1db4ecdc/darwin-amd64/go1.9
  • Solc 0.4.18+commit.9cf6e910.Darwin.appleclang


Executing The Tests



Notes

  • The tests were conducted using bash shell scripts running Geth/v1.7.2-stable-1db4ecdc/darwin-amd64/go1.9 JavaScript commands
  • The smart contracts were compiled using Solidity 0.4.18+commit.9cf6e910.Darwin.appleclang
  • The test script can be found in 01_test1.sh
  • The test results can be found in test1results.txt with details in test1output.txt
  • The test can be run on OS/X, should run on Linux and may run on Windows with Cygwin
  • The genesis.json allocates ethers to the test accounts, and specifies a high block gas limit to accommodate many transactions in the same block
  • The 00_runGeth.sh scripts starts geth with the parameter --targetgaslimit 994712388 to keep the high block gas limit
  • The reasons for using the test environment as listed above, instead of truffles/testrpc are:
    • The test are conducted using the actual blockchain client software as is running on Mainnet and not just a mock environment like testrpc
    • It is easy to change parameters like dates, addresses or blocknumbers using the Unix search/replace tools
    • There have been issues in the part with version incompatibility between testrpc and solidity, i.e., version mismatches
    • The intermediate and key results are all saved to later viewing