@cosmology/ast
Version:
Cosmos TypeScript AST generation
150 lines (139 loc) • 5.23 kB
text/typescript
import { getNestedProto } from '@cosmology/utils';
import { expectCode, getTestProtoStore, printCode } from '../../../../../test-utils/'
import { ProtoParseContext } from '../../../context';
import { createSDKType, createProtoType, createProtoTypeType } from '..';
import { createAminoType } from '../amino';
const store = getTestProtoStore();
store.traverseAll();
describe('MsgDelegate', () => {
const ref = store.findProto('cosmos/staking/v1beta1/tx.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('interface', () => {
expectCode(createProtoType(context, 'MsgDelegate',
getNestedProto(ref.traversed).MsgDelegate
));
});
})
describe('MsgSend', () => {
const ref = store.findProto('cosmos/bank/v1beta1/tx.proto');
const context = new ProtoParseContext(ref, store, store.options);
context.options.aminoEncoding.useLegacyInlineEncoding = true;
it('interface', () => {
expectCode(createProtoType(context, 'MsgSend',
getNestedProto(ref.traversed).MsgSend
));
});
it('interface type', () => {
expectCode(createProtoTypeType(context, 'MsgSend',
getNestedProto(ref.traversed).MsgSend
));
});
it('api interface', () => {
expectCode(createSDKType(context, 'MsgSend',
getNestedProto(ref.traversed).MsgSend
));
});
it('amino interface', () => {
expectCode(createAminoType(context, 'MsgSend',
getNestedProto(ref.traversed).MsgSend
));
});
// it('interface', () => {
// expectCode(createObjectWithMethods(context, 'MsgSend',
// getNestedProto(ref.traversed).MsgSend
// ));
// });
});
describe('PageRequest', () => {
const ref = store.findProto('cosmos/base/query/v1beta1/pagination.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('interface', () => {
expectCode(createProtoType(context, 'PageRequest',
getNestedProto(ref.traversed).PageRequest
));
});
it('api interface', () => {
expectCode(createSDKType(context, 'PageRequest',
getNestedProto(ref.traversed).PageRequest
));
});
});
describe('PageResponse', () => {
const ref = store.findProto('cosmos/base/query/v1beta1/pagination.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('interface', () => {
expectCode(createProtoType(context, 'PageResponse',
getNestedProto(ref.traversed).PageResponse
));
});
it('api interface', () => {
expectCode(createSDKType(context, 'PageResponse',
getNestedProto(ref.traversed).PageResponse
));
});
});
describe('cosmos/auth/v1beta1/auth.proto', () => {
const ref = store.findProto('cosmos/auth/v1beta1/auth.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('BaseAccount', () => {
expectCode(createProtoType(context, 'BaseAccount',
getNestedProto(ref.traversed).BaseAccount
));
});
it('ModuleAccount', () => {
expectCode(createProtoType(context, 'ModuleAccount',
getNestedProto(ref.traversed).ModuleAccount
));
});
});
describe('GenesisState', () => {
const ref = store.findProto('cosmos/auth/v1beta1/genesis.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('interface', () => {
expectCode(createProtoType(context, 'GenesisState',
getNestedProto(ref.traversed).GenesisState
));
});
});
describe('cosmos/authz/v1beta1/authz.proto', () => {
const ref = store.findProto('cosmos/authz/v1beta1/authz.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('Grant Type', () => {
expectCode(createProtoTypeType(context, 'Grant',
getNestedProto(ref.traversed).Grant
));
});
it('GrantAuthorization Type', () => {
expectCode(createProtoTypeType(context, 'GrantAuthorization',
getNestedProto(ref.traversed).GrantAuthorization
));
});
it('Grant', () => {
expectCode(createProtoType(context, 'Grant',
getNestedProto(ref.traversed).Grant
));
});
it('GrantAuthorization', () => {
expectCode(createProtoType(context, 'GrantAuthorization',
getNestedProto(ref.traversed).GrantAuthorization
));
});
});
describe('cosmos/authz/v1beta1/query.proto', () => {
const ref = store.findProto('cosmos/authz/v1beta1/query.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('QueryGrantsRequest', () => {
expectCode(createProtoType(context, 'QueryGrantsRequest',
getNestedProto(ref.traversed).QueryGrantsRequest
));
});
});
describe('confio/proofs.proto', () => {
const ref = store.findProto('confio/proofs.proto');
const context = new ProtoParseContext(ref, store, store.options);
it('ExistenceProof', () => {
expectCode(createProtoType(context, 'ExistenceProof',
getNestedProto(ref.traversed).ExistenceProof
));
});
});