-
Notifications
You must be signed in to change notification settings - Fork 100
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
Context plumbing in ActionTest
suite
#1170
Merged
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
The functions that are immediately run at declaration don't have a natural means of accepting a `Context` so can be considered the same as the `TestXXX()` entrypoint function.
iFrostizz
approved these changes
Jul 22, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you so much!
aaronbuchwald
added a commit
that referenced
this pull request
Jul 23, 2024
* implement action test suite helper * add morpheusvm action tests * add check for contains error for dynamic errors * remove morpheusvm test, simplify suite * add morpheusvm parametrized tests * add licence * check err * cleanup * remove `Actor` usage and implement `InMemoryStore` * remove unused ctx * add review suggestions * Update chaintesting/action_test_helpers.go Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> * Update chaintesting/action_test_helpers.go Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> * add tests, set actor, add assertion * Updated Token Example (#1142) * token example * StateKey -> StateKeys * nits * update asserts and unwraps * Expose state functions from context (#1153) * use `WindowSize` constant (#1155) * update readme to point to an existing tokenvm action (#1049) * update readme to point to an existing tokenvm action * update readme: change action name --------- Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> * Refactor `vm.Config` out of `vm.Controller` (#1146) * refactor hypersdk config out of controllers Signed-off-by: Joshua Kim <20001595+joshua-kim@users.noreply.github.com> * remove unused parallelism key from test configs (#1158) Signed-off-by: Joshua Kim <20001595+joshua-kim@users.noreply.github.com> * Remove `key_create` endpoint and use `Address` everywhere (#1121) * pass directly actor address to simulator * remove unused params * Conditionally compile the `Address` helpers * add test-utils flag * Don't add unnecessary dependency (#1122) * cleanup * read `Actor` directly * remove support for `create_key` endpoint and replace everything by `Address` instances * remove unused params * remove `Key` `Param` (#1131) * remove `Address::from_str` --------- Co-authored-by: Richard Pringle <richard.pringle@avalabs.org> * rename to chaintest, slice of `ActionTest`, remove suite * rename to `InMemoryStore` to export type * Update examples/morpheusvm/actions/transfer_test.go Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> * add sender post-balance assertion * pass in `*testing.T` to the `Assertion` func pointer * pass context from `Run`, handle error signal on done * Context plumbing in `ActionTest` suite (#1170) * refactor: run tests individually to avoid `Context` pollution * refactor: pipe `Contexts` where possible The functions that are immediately run at declaration don't have a natural means of accepting a `Context` so can be considered the same as the `TestXXX()` entrypoint function. * write helper function * Update chaintest/action_test_helpers.go Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> * Update examples/morpheusvm/actions/transfer_test.go Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> --------- Signed-off-by: Franfran <51274081+iFrostizz@users.noreply.github.com> Signed-off-by: Joshua Kim <20001595+joshua-kim@users.noreply.github.com> Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com> Co-authored-by: Sam Liokumovich <65994425+samliok@users.noreply.github.com> Co-authored-by: Richard Pringle <richard.pringle@avalabs.org> Co-authored-by: nathan haim <haim.nathan@icloud.com> Co-authored-by: Joshua Kim <20001595+joshua-kim@users.noreply.github.com> Co-authored-by: Arran Schlosberg <519948+ARR4N@users.noreply.github.com>
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.
As you mentioned, the
Context
could be polluted if shared across tests (it's unlikely, but I agree that it's worth avoiding, and it's quite simple). I changedRun
to a method instead.Wherever possible, the incoming
Context
is plumbed through to where it's used, if possible/appropriate.