-
Notifications
You must be signed in to change notification settings - Fork 502
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
services/horizon: Improve sponsorship integration tests' running time & flexibility. #3090
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Shaptic
changed the title
Cap33 test refactor
services/horizon: Refactor sponsorship integration tests to improve running time & readability.
Oct 2, 2020
Shaptic
changed the title
services/horizon: Refactor sponsorship integration tests to improve running time & readability.
services/horizon: Improve sponsorship integration tests' running time & flexibility.
Oct 2, 2020
Shaptic
force-pushed
the
cap33-test-refactor
branch
2 times, most recently
from
October 2, 2020 18:16
53cc289
to
59e04eb
Compare
bartekn
approved these changes
Oct 5, 2020
services/horizon/internal/integration/protocol14_sponsorship_ops_test.go
Show resolved
Hide resolved
- don't use master account - pre-create all accounts - limit ops check - fix account numSponsor[ed|ing] check - add progress log messages
- add and use helper functions for getting ops/effects cleanly - remove duplicate test
Shaptic
force-pushed
the
cap33-test-refactor
branch
from
October 7, 2020 19:35
59e04eb
to
05e1542
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Checklist
PR Structure
otherwise).
services/friendbot
, orall
ordoc
if the changes are broad or impact manypackages.
Thoroughness
.md
files, etc... affected by this change). Take a look in the
docs
folder for a given service,like this one.
Release planning
needed with deprecations, added features, breaking changes, and DB schema changes.
semver, or if it's mainly a patch change. The PR is targeted at the next
release branch if it's not a patch change.
What
Refactors the sponsorship (CAP-33) integration tests:
tt.Condition
. This shortens the code verbosity and improves readability!itest.MustGetAccount()
replaces instances of a manual force-retrieval of an account, and account/keypair management in general is simpler.tt.Eventually
is replaced bytt.Condition
From what I can tell, all of the actual testing is still the same. There may be a way to actually combine ALL of these tests into a single test w/ a handful of transactions (akin to what happened in #3033 with predicates), but this is still subject to investigation.
Why
This massively improves both the running time and readability.
It now takes ~1m30s as opposed to ~4m20s previously.
This should close #3075.
Known limitations
n/a