nim-codex/tests/contracts
Eric df6b9c6760
Workaround for Hardhat last block timestamp bug (#644)
* Workaround for Hardhat timestamp bug

Likely due to a Hardhat bug in which the callbacks for subscription events are called and awaited before updating its local understanding of the last block time, Hardhat will report a block time in the `newHeads` event that is generally 1 second before the time reported from `getLatestBlock.timestamp`. This was causing issues with the OnChainClock's offset and therefore the `now()` used by the `OnChainClock` would sometimes be off by a second (or more), causing tests to fail.

This commit introduce a `codex_use_hardhat` compilation flag, that when set, will always get the latest block timestamp from Hardhat via the `getLatestBlock.timestamp` RPC call for `OnChainClock.now` calls. Otherwise, the last block timestamp reported in the `newHeads` event will be used.

Update the docker dist tests compilation flag for simulated proof failures (it was not correct), and explicitly add the `codex_use_hardhat=false` for clarity.

* enable simulated proof failures for coverage

* comment out failing test on linux -- will be replaced

* bump codex contracts eth

* add back clock offset for non-hardhat cases

* bump codex-contracts-eth

increases pointer by 67 blocks each period increase

* Add `codex_use_hardhat` flag to coverage tests
2023-12-20 08:06:24 +11:00
..
deployment.nim feat: bigint uses decimal over hex encoding (#452) 2023-06-21 07:46:18 +02:00
examples.nim Load purchase state from chain (#283) 2022-11-08 08:10:17 +01:00
nim.cfg feat: integrate dagger contracts 2022-02-04 15:34:56 +11:00
testClock.nim Workaround for Hardhat last block timestamp bug (#644) 2023-12-20 08:06:24 +11:00
testContracts.nim Rename provider to ethProvider in tests (#657) 2023-12-18 09:34:04 +00:00
testDeployment.nim Create memory-leak detecting test suite (#226) 2023-06-22 12:01:21 -06:00
testMarket.nim Rename provider to ethProvider in tests (#657) 2023-12-18 09:34:04 +00:00
time.nim feat: bigint uses decimal over hex encoding (#452) 2023-06-21 07:46:18 +02:00