sdk-monorepo/docs/TESTS.md

1.3 KiB

On Testing

You may want to reproduce tests. This repository does not actually offer a one-run full test suite, yet.

This is due to the fact that in order to properly test behaviour, test caches must be built, and this is a time intensive task which is error-prone on slower networks due to socket hang ups and such.

Thus, here are some testing requirements/advisories which must be respected to receive successful tests.

Core

In order for any deposit - withdrawal test pair to succeed, the respective instances must be fully synced. This means the unforked sync test must be run, which can be done in tandem with the test pair, but depending on the network this is being run over, there might be socket hangups and such.

Deposit-withdrawal test pairs MUST be run independently right now, otherwise there are currently no guarantees that tests won't fail due to the blockchain state being modified. This will be addressed soon.

Note that ALSO, the TorProvider does not seem to be compatible with the ganache Provider (for tests), meaning that in fact, tests should be separated since forked tests aren't torified. If you want to torify them, use torsocks or proxychains.

Web

For these tests:

  • Tests should be run individually.
  • You MUST have a local SOCKS5 proxy running on some port on localhost.