lbryio / lbrycrd

The blockchain that provides the digital content namespace for the LBRY protocol
https://lbry.com
MIT License
2.57k stars 178 forks source link

An automated test for checking that a PR can sync #164

Open kaykurokawa opened 6 years ago

kaykurokawa commented 6 years ago

As part of the automated travis build (or maybe it could be a separate thing from travis) , we should try to run and sync the built lbrycrd on testnet to see if it can a) sync from scratch and b) start up when its already synced and can succesfuly recieve a couple of blocks.

Not sure if this is possible just using travis (might take too long? use too much disk space?). We might have to set up some servers for this.

lbrynaut commented 6 years ago

Yeah, I agree it would be nice, but I think it would also require doing externally. As a first cut, we could probably just grab the binaries built from the travis build, run them for however long it's trying to do things, then e-mail the last couple hundred lines of the log to determine if things were normal up until shutdown.

I think travis has timeout limits that would prevent it from working there.

eukreign commented 6 years ago

Would be cool if you guys could use orchstr8 to run the tests. The wallet currently runs integration tests where it creates a regtest and generates 200 blocks then performs some interactions. Is testing regtest good enough or do you guys need mainnet/testnet specifically?

Looks like this: https://travis-ci.org/lbryio/torba/jobs/397136549#L562

lbrynaut commented 6 years ago

Nothing wrong with regtest testing also, but what @kaykurokawa is suggesting is specifically testnet, to ensure nothing obvious is overlooked in a PR. Usually that kind of testing is done manually.

kaykurokawa commented 6 years ago

It wouldn't hurt to have some quick tests to verify regtest within the test. Also, might also be good to try testing sync'ing to mainnet as well.