Test 🧪: add gas/weight tests for Foreign Assets calls #3176
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.
What does it do?
This PR adds tests for checking weight and gas costs associated with creating and interacting with Foreign Assets. On the Substrate side it checks the weights for creation, freeze, unfreeze and changing the XCM location. On the EVM side it just checks gas costs associated with a simple transfer.
What important points should reviewers know?
The key aspect of these tests is checking that the costs are not over the block limits and seem reasonable. This comes after detecting an issue in the benchmarks for these calls that caused much higher weights than the actual used storage and compute time.
Is there something left for follow-up PRs?
This PR does not consider XCM tests for interacting with the new implementation of Foreign Assets. These should be added to #3104.
What alternative implementations were considered?
Are there relevant PRs or issues in other repositories (Substrate, Polkadot, Frontier, Cumulus)?
What value does it bring to the blockchain users?