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

migrate existing tests from previous upgrades to z:acceptance #10049

Open
2 tasks
Tracked by #8961
turadg opened this issue Sep 9, 2024 · 2 comments
Open
2 tasks
Tracked by #8961

migrate existing tests from previous upgrades to z:acceptance #10049

turadg opened this issue Sep 9, 2024 · 2 comments
Assignees

Comments

@turadg
Copy link
Member

turadg commented Sep 9, 2024

What is the Problem Being Solved?

We have many tests of upgrade that ran once but we need them to continuously test regression

Description of the Design

Migrate all existing acceptance tests to z:acceptance

Security Considerations

Scaling Considerations

Test Plan

Upgrade Considerations

@LuqiPan
Copy link
Contributor

LuqiPan commented Sep 10, 2024

This is will be worked on by BytePitch folks(@anilhelvaci and @Jorge-Lopes)

@anilhelvaci
Copy link
Collaborator

Hey @LuqiPan , we started working on this one. Our action items are;

  • go over the proposals in a3p
  • for every proposal, identify code that tests common/similar things
  • move those common tests in z:acceptance and put them in TEST phase

cc @Jorge-Lopes

mergify bot added a commit that referenced this issue Oct 8, 2024
…s` to the `z:acceptance` (#10123)

closes: https://github.com/Agoric/BytePitchPartnerEng/issues/5
closes: https://github.com/Agoric/BytePitchPartnerEng/issues/7
refs: #10049

## Description


This PR is part of an ongoing effort to migrate some of the selected test cases from `a3p-proposals` to the `z:acceptance` test phase. 

This particular PR new tests focus on:
- invitations and payments behavior within the smart wallet
- actions that can be executed on vaults

The source code of the migrated tests are:
- [send invitation via namesByAddress](https://github.com/Agoric/agoric-3-proposals/blob/main/proposals/75%3Aupgrade-16/provisioning.test.js#L34-L51)
- [exitOffer tool reclaims stuck payment](https://github.com/Agoric/agoric-3-proposals/blob/main/proposals/74%3Aupgrade-15/exit-reclaim.test.js#L9-L38)
- [ante handler sends fee only to vbank/reserve](https://github.com/Agoric/agoric-3-proposals/blob/main/proposals/71%3Aupgrade-14/ante-fees.test.js#L5-L74)
- Vault actions executed on [actions.sh](https://github.com/Agoric/agoric-sdk/blob/mainnet1B-rc3/packages/deployment/upgrade-test/upgrade-test-scripts/agoric-upgrade-10/actions.sh#L105-L176)


### Security Considerations


n/a

### Scaling Considerations


n/a

### Documentation Considerations


One commit included in this PR fixes a small typo on `a3p-integration/proposals/README.md` 

### Testing Considerations


The new test files included in this PR are invoked through `test.sh`, so no changes to the current testing workflow are necessary.

However, as pointed out by @dckc in this [comment](bytepitch@6afaba3#r146887047), using `waitForBlock()` can lead to unexpected behavior. To address this, we plan to update the `z:acceptance` tests to mitigate this issue.

As a solution, we propose extending the `@agoric/synthetic-chain` package to export a method like [makeRetryUntilCondition](https://github.com/Agoric/agoric-sdk/blob/f291362e4bc62ec31552cef29ec1a5f5cfbf7bd7/multichain-testing/tools/sleep.ts#L62) or a similar function. This would provide a more reliable alternative to `waitForBlock()`.

Additionally, there is already an [test-vaults.mts](https://github.com/Agoric/agoric-sdk/blob/master/a3p-integration/proposals/z%3Aacceptance/scripts/test-vaults.mts) file that test operations related to changes on auctions parameters.
To avoid confusion with `vaults.test` due to the similarity in names, I propose renaming this file to `auction.test` and expanding its scope to cover all auction-related tests.

### Upgrade Considerations


n/a
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

No branches or pull requests

3 participants