-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Some input regarding generation node, regtest, ... #1
Comments
Thanks, @dexX7. I'm hoping to find some time to return to working on these tests soon. I'd also like to look into running your tests from the Mastercoin Jenkins server. |
Since there are a few points where I'm not fully satisfied with my current solution (and likewise the whole Bitcoin Core Python testing framework), I'd really like to look into bitcoin-spock rather sooner than later, especially due to the very descriptive nature of the tests I've seen here. Excuse my probably obvious questions and please correct me, if I'm wrong: a) tests can be run locally, b) Jenkins is not required to run tests and c) Jenkins is manager for automated test, similar to Travis CI, correct? The current process is as follows:
I assume an integration would start by pulling the tests and executing each of them. Would it be more favorable to have one test that calls sub tests or should this be done one by one, repeating the process starting at step 5? What can be done for a frictionless integration and what might be improved, assuming it's not droped in favor of an alternative? Ah, and as a side note: I also started to create unit tests for Master Core, based on the existing Boost tests. One of the tests fails, but the tested behavior isn't used, nor necessary, to run Master Core successfully. Does this have a negative impact on the Jenkins testing and would it make sense to remove this specific test? |
@dexX7 : You are correct on all counts: The tests in bitcoin-spock currently only expect a single bitcoind/mastercored node running either on MainNet or in RegTest mode. They could (and should) be extended to run on TestNet and to test block chain forks with RegTest and multiple nodes. It is definitely possible to use Jenkins to run your python RegTest process using the Python tests. I think I'd have to look at your python tests to determine what would be required for an integration and I'm really busy for the next week or two. I'm really hoping got get back to the Spock tests soon and that would be a good time to look at your tests. I also will make time to answer any questions you have about the Spock tests. You should definitely try to run them locally. For the failing Boost test, it should probably be temporarily disabled (either in the code or with a custom Jenkins configuration) so that the Jenkins Master Core builds aren't marked as bad. |
Thanks! This is very helpful. |
I think it's time to close this issue. @dexX7 is there anything in here that warrants leaving this open or creating new issues? |
Yes, can be closed. |
* Update to bitcoinj 0.15.1 and ConsensusJ 0.4.0-SNAPSHOT Additional #1: fix a few more `frozen`-related bugs Additional #2: Reduce test output * Parameterize some groups, artifacts (ready for JitPack.io) Also move the bitcoinj-dsl testCompile dependency to subprojects{} * Get CI build working with jitpack.io * Fix Omni CLI integration tests (broken by a class move in ConensusJ 0.4.0) * Bump to released ConsensusJ 0.4.0 Also bump a few other dependencies to latest versions
Just yesterday I stumbled upon your talk about unit and regtests tests and I was quite impressed.
I noticed a few points you mentioned:
Very recently, I think, Bitcoin Core master basically build a Python framework for regtests that takes care of a few things in particular:
My initial goal was to port the few regtests of Master Core v0.0.8, but I ended up modifiying the framework and basically hacked a Master Core regtest framework together. In the context of above:
I haven't explored bitcoin-spock yet (unfortunately!), and I'm not sure, if this is of any help, but wanted to let you know as soon as possible. :)
Regarding consensus hashes, I started mastercoin-MSC/mastercore#143 some time ago.
The text was updated successfully, but these errors were encountered: