Use Box<XcmV3MultiLocation> instead of MultiAssetId (#5700)

* Use Box<XcmV3MultiLocation> instead of MultiAssetId

* Remove Box<>

* Fix test
This commit is contained in:
Jegor Sidorenko
2023-08-29 15:03:21 +03:00
committed by GitHub
parent f08be2f928
commit cfffa68c96
7 changed files with 19 additions and 33 deletions
@@ -11,12 +11,5 @@ import { runtime } from './runtime.js';
export default {
rpc: {},
runtime,
types: {
MultiAssetId: {
_enum: {
Native: null,
Asset: 'AssetId'
}
}
}
types: {}
} as Definitions;
@@ -12,11 +12,11 @@ export const runtime: DefinitionsCall = {
params: [
{
name: 'asset1',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
},
{
name: 'asset2',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
}
],
type: 'Option<(Balance,Balance)>'
@@ -26,11 +26,11 @@ export const runtime: DefinitionsCall = {
params: [
{
name: 'asset1',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
},
{
name: 'asset2',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
},
{
name: 'amount',
@@ -48,11 +48,11 @@ export const runtime: DefinitionsCall = {
params: [
{
name: 'asset1',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
},
{
name: 'asset2',
type: 'MultiAssetId'
type: 'XcmV3MultiLocation'
},
{
name: 'amount',
@@ -1,15 +1,4 @@
// Auto-generated via `yarn polkadot-types-from-defs`, do not edit
/* eslint-disable */
import type { Enum } from '@polkadot/types-codec';
import type { AssetId } from '@polkadot/types/interfaces/runtime';
/** @name MultiAssetId */
export interface MultiAssetId extends Enum {
readonly isNative: boolean;
readonly isAsset: boolean;
readonly asAsset: AssetId;
readonly type: 'Native' | 'Asset';
}
export type PHANTOM_ASSETCONVERSION = 'assetConversion';
@@ -122,11 +122,12 @@ describe('runtime definitions', (): void => {
for (const { methods, version } of versions) {
describe(`version ${version}`, (): void => {
const methodsEntries = Object.entries<DefinitionCall>(methods);
const skipInspectTypes = ['XcmV3MultiLocation', 'Result<Vec<XcmV3MultiAsset>, FungiblesAccessError>', 'Result<XcmVersionedMultiAssets, FungiblesAccessError>'];
for (const [key, { params, type }] of methodsEntries) {
describe(`${key}`, (): void => {
// Applied from runtime, used in Funglibles
const skipInspectType = type === 'Result<Vec<XcmV3MultiAsset>, FungiblesAccessError>' || type === 'Result<XcmVersionedMultiAssets, FungiblesAccessError>';
// Applied from runtime, used in Fungibles
const skipInspectType = skipInspectTypes.includes(type);
if (!skipInspectType) {
it(`output ${type} is known`, (): void => {
@@ -137,6 +138,10 @@ describe('runtime definitions', (): void => {
if (params.length) {
describe('params', (): void => {
for (const { name, type } of params) {
if (skipInspectTypes.includes(type)) {
continue;
}
it(`${name}: ${type} is known`, (): void => {
expect(() => inspectType(type)).not.toThrow();
});