Cache class definitions for codec primitives (#4855)

* Cache class definitions for codec primitives

* Adjustments for linting

* clearCache

* cleaner test description

* inline assign

* Adjust failing

* Pass definition via Options
This commit is contained in:
Jaco
2022-05-26 16:59:32 +03:00
committed by GitHub
parent 4825d5466d
commit 71a8ff55d6
8 changed files with 157 additions and 31 deletions
+14 -2
View File
@@ -205,7 +205,8 @@ describe('createType', (): void => {
expect(balu32.bitLength()).toEqual(32);
});
it('allows for re-registration of a type (affecting derives)', (): void => {
it('allows for re-registration of a type (derived types)', (): void => {
registry.clearCache();
registry.register({
Balance: 'u128',
TestComplex: {
@@ -224,7 +225,18 @@ describe('createType', (): void => {
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-call
expect(cmpDef.balance.bitLength()).toEqual(128);
registry.register({ Balance: 'u32' });
registry.clearCache();
registry.register({
Balance: 'u32',
TestComplex: {
balance: 'Balance',
// eslint-disable-next-line sort-keys
accountId: 'AccountId',
log: '(u64, u32)',
// eslint-disable-next-line sort-keys
fromSrml: 'Gas'
}
});
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
const cmpu32: any = registry.createType('TestComplex');