From 6fc35d641a2e0c89e9d4f5c70ff68f8f30fa5f59 Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Tue, 7 May 2019 15:35:15 +0200 Subject: [PATCH] Fix linked maps (#878) * Fix linked maps * Line breaks --- packages/api/test/e2e/promise-queries.spec.js | 13 +++++++++++-- .../src/fromMetadata/v4/createFunction.ts | 2 +- packages/types/src/Metadata/v2/Storage.ts | 12 +++++++++--- packages/types/src/Metadata/v3/Storage.ts | 12 +++++++++--- packages/types/src/Metadata/v4/Storage.ts | 12 +++++++++--- 5 files changed, 39 insertions(+), 12 deletions(-) diff --git a/packages/api/test/e2e/promise-queries.spec.js b/packages/api/test/e2e/promise-queries.spec.js index b808771afe..5f39fb2fd8 100644 --- a/packages/api/test/e2e/promise-queries.spec.js +++ b/packages/api/test/e2e/promise-queries.spec.js @@ -4,6 +4,7 @@ import BN from 'bn.js'; import testingPairs from '@plugnet/keyring/testingPairs'; +import { LinkageResult } from '@plugnet/types/codec/Linkage'; import Api from '../../src/promise'; @@ -78,6 +79,14 @@ describe.skip('e2e queries', () => { }); }); + it('subscribes to a linked map (staking.validators)', (done) => { + api.query.staking.validators((prefs) => { + expect(prefs instanceof LinkageResult).toBe(true); + + done(); + }); + }); + it('subscribes to multiple results (freeBalance.multi)', (done) => { api.query.balances.freeBalance.multi([ keyring.alice.address(), @@ -87,9 +96,9 @@ describe.skip('e2e queries', () => { ], (balances) => { expect(balances).toHaveLength(4); - console.error(balances); + console.error(balances); - done(); + done(); }); }); diff --git a/packages/type-storage/src/fromMetadata/v4/createFunction.ts b/packages/type-storage/src/fromMetadata/v4/createFunction.ts index 5d8f1cd240..5d6cd4aeda 100644 --- a/packages/type-storage/src/fromMetadata/v4/createFunction.ts +++ b/packages/type-storage/src/fromMetadata/v4/createFunction.ts @@ -45,7 +45,7 @@ export default function createFunction (section: Text | string, method: Text | s assert(!isUndefined(arg) && !isNull(arg), `${meta.name} expects one argument`); const type = meta.type.asMap.key.toString(); - const param = createType(type, arg).toU8a(false); + const param = createType(type, arg).toU8a(); key = u8aConcat(key, param); } diff --git a/packages/types/src/Metadata/v2/Storage.ts b/packages/types/src/Metadata/v2/Storage.ts index d3ef270051..b454981d64 100644 --- a/packages/types/src/Metadata/v2/Storage.ts +++ b/packages/types/src/Metadata/v2/Storage.ts @@ -103,9 +103,15 @@ export class StorageFunctionType extends EnumType)`; + } + + return this.asMap.value.toString(); + } + + return this.asType.toString(); } } diff --git a/packages/types/src/Metadata/v3/Storage.ts b/packages/types/src/Metadata/v3/Storage.ts index 5537aceb6d..8d37106113 100644 --- a/packages/types/src/Metadata/v3/Storage.ts +++ b/packages/types/src/Metadata/v3/Storage.ts @@ -113,9 +113,15 @@ export class StorageFunctionType extends EnumType)`; + } + + return this.asMap.value.toString(); + } + + return this.asType.toString(); } } diff --git a/packages/types/src/Metadata/v4/Storage.ts b/packages/types/src/Metadata/v4/Storage.ts index b1ad9183b0..c90299d63d 100644 --- a/packages/types/src/Metadata/v4/Storage.ts +++ b/packages/types/src/Metadata/v4/Storage.ts @@ -207,9 +207,15 @@ export class StorageFunctionType extends EnumType)`; + } + + return this.asMap.value.toString(); + } + + return this.asType.toString(); } }