Skip to content
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

Update tests to use tasty + nettest interface + batching #148

Open
gromakovsky opened this issue Dec 22, 2020 · 4 comments
Open

Update tests to use tasty + nettest interface + batching #148

gromakovsky opened this issue Dec 22, 2020 · 4 comments

Comments

@gromakovsky
Copy link
Collaborator

Clarification and motivation

Our tests are somewhat messy and slow, we can clean them up to use latest cleveland features more efficiently.

Acceptance criteria

  1. We don't use hspec and tasty-hspec to group tests, we group them using tasty directly.
  2. stablecoin-nettest and stablecoin-test are merged into one test-suite. Previously we kept them separated to be able to run only non-network tests, but now it's possible in a united test suite as well.
  3. We put operations into batches as much as possible to make tests (presumably) faster.
  4. We don't use the Integrational interface directly unless it's really necessary (it shouldn't be, because the Nettest interface should contain all Integrational features).
@Martoon-00
Copy link

I highly do not recommend starting using batches before one issue about batching is implemented. The interface should change, hopefully, after that making a batch will be as simple as wrapping a code into batch call.

@pasqu4le
Copy link
Contributor

I'll add this as a note here: there is a TODO in Lorentz.Contracts.Test.Permit about replacing the deprecated rewindTime in favor of advanceTime once the relative issue in morley is solved.

The issue has however since been closed in favor of adding it only to nettest, so as per the number 4 of this issue we should either remove that while migrating those tests to nettest or in case of necessity just remove the TODO (as the integrational-only advanceTime isn't coming anymore AFAIU).

@pasqu4le
Copy link
Contributor

Note, for future reference: this is in large part solved by #187

It's possible however that there are some improvements left (particularly batching) so we'l need to check that.

@lierdakil
Copy link
Contributor

There really isn't much potential for batching, except for the initial set-up/origination (and even there it's somewhat limited) In most cases, as things are stateful, either next operations depend on the result of the previous ones, operations from different senders need to be interleaved, or we're testing for errors in specific calls, neither of which allows for effective batching.

lierdakil added a commit that referenced this issue Jun 1, 2023
Problem: a lot of initial setup in tests can be batched, considerably
speeding up network tests.

Solution: do that.

This replaces individual address setup with a structure in some tests.
This is a little bit wasteful, but barely so, as addresses should be
reused.
@lierdakil lierdakil mentioned this issue Jun 1, 2023
10 tasks
lierdakil added a commit that referenced this issue Jul 4, 2023
Problem: a lot of initial setup in tests can be batched, considerably
speeding up network tests.

Solution: do that.

This replaces individual address setup with a structure in some tests.
This is a little bit wasteful, but barely so, as addresses should be
reused.
@lierdakil lierdakil removed their assignment Sep 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants