@cosmology/ast
Version:
Cosmos TypeScript AST generation
42 lines (41 loc) • 1.85 kB
JavaScript
"use strict";
var _index = require("./index");
var _protoParser = require("@cosmology/proto-parser");
var _testUtils = require("../../test-utils");
var _utils = require("@cosmology/utils");
var store = new _protoParser.ProtoStore();
store.protos = [];
var addRef = function addRef(_ref) {
var filename = _ref.filename,
content = _ref.content;
var ref = {
absolute: filename,
filename: filename,
proto: (0, _protoParser.parseProto)(content)
};
store.protos.push(ref);
};
addRef({
filename: 'cosmology/example/tx.proto',
content: "\nsyntax = \"proto3\";\n\npackage cosmology.finance;\noption go_package = \"github.com/cosmology-finance/go\";\n\nenum FancyEnumType {\n NO_HASH = 0;\n SHA256 = 1;\n SHA512 = 2;\n KECCAK = 3;\n RIPEMD160 = 4;\n BITCOIN = 5;\n}\n"
});
addRef({
filename: 'cosmology/example/msg.proto',
content: "\nsyntax = \"proto3\";\npackage cosmology.finance;\noption go_package = \"github.com/cosmology-finance/go\";\n\nimport \"cosmology/example/tx.proto\";\n\nmessage MsgDoFunThing {\n string address = 1;\n cosmology.finance.FancyEnumType myEnumField = 2;\n}\n\nservice Msg {\n rpc JoinPool(MsgDoFunThing) returns (MsgDoFunThingResponse);\n}\nmessage MsgDoFunThingResponse {}\n\n"
});
store.traverseAll();
describe('cosmology/example/msg', function () {
var _prepareContext = (0, _testUtils.prepareContext)(store, 'cosmology/example/msg.proto'),
context = _prepareContext.context,
root = _prepareContext.root,
protos = _prepareContext.protos;
it('AminoConverter', function () {
context.options.aminoEncoding.casingFn = _utils.camel;
(0, _testUtils.expectCode)((0, _index.createAminoConverter)({
context: context,
root: root,
name: 'AminoConverter',
protos: protos
}));
});
});