@fintekkers/ledger-models 0.4.43 → 0.4.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node/fintekkers/models/portfolio/portfolio_pb.d.ts +7 -15
- package/node/fintekkers/models/portfolio/portfolio_pb.js +35 -132
- package/node/fintekkers/models/position/position_filter_pb.d.ts +7 -15
- package/node/fintekkers/models/position/position_filter_pb.js +35 -132
- package/node/fintekkers/models/position/position_pb.d.ts +7 -15
- package/node/fintekkers/models/position/position_pb.js +35 -132
- package/node/fintekkers/models/price/price_pb.d.ts +7 -15
- package/node/fintekkers/models/price/price_pb.js +35 -132
- package/node/fintekkers/models/security/bond/issuance_pb.d.ts +7 -15
- package/node/fintekkers/models/security/bond/issuance_pb.js +35 -132
- package/node/fintekkers/models/security/identifier/identifier_pb.d.ts +7 -15
- package/node/fintekkers/models/security/identifier/identifier_pb.js +35 -132
- package/node/fintekkers/models/security/index_composition_pb.d.ts +7 -15
- package/node/fintekkers/models/security/index_composition_pb.js +35 -132
- package/node/fintekkers/models/security/security_pb.d.ts +7 -15
- package/node/fintekkers/models/security/security_pb.js +35 -132
- package/node/fintekkers/models/security/security_pb.test.js +4 -8
- package/node/fintekkers/models/security/security_pb.test.js.map +1 -1
- package/node/fintekkers/models/security/security_pb.test.ts +4 -5
- package/node/fintekkers/models/security/tenor_pb.d.ts +7 -15
- package/node/fintekkers/models/security/tenor_pb.js +35 -132
- package/node/fintekkers/models/strategy/strategy_allocation_pb.d.ts +7 -15
- package/node/fintekkers/models/strategy/strategy_allocation_pb.js +35 -132
- package/node/fintekkers/models/strategy/strategy_pb.d.ts +7 -15
- package/node/fintekkers/models/strategy/strategy_pb.js +35 -132
- package/node/fintekkers/models/transaction/transaction_pb.d.ts +7 -15
- package/node/fintekkers/models/transaction/transaction_pb.js +35 -132
- package/node/fintekkers/models/util/api/api_key_pb.d.ts +7 -15
- package/node/fintekkers/models/util/api/api_key_pb.js +35 -132
- package/node/fintekkers/models/util/date_range_pb.d.ts +7 -15
- package/node/fintekkers/models/util/date_range_pb.js +35 -132
- package/node/fintekkers/models/util/decimal_value_pb.d.ts +0 -5
- package/node/fintekkers/models/util/decimal_value_pb.js +0 -30
- package/node/fintekkers/models/util/lock/node_partition_pb.d.ts +7 -15
- package/node/fintekkers/models/util/lock/node_partition_pb.js +35 -132
- package/node/fintekkers/models/util/lock/node_state_pb.d.ts +7 -15
- package/node/fintekkers/models/util/lock/node_state_pb.js +35 -132
- package/node/fintekkers/models/util/object_type_pb.d.ts +0 -3
- package/node/fintekkers/models/util/object_type_pb.js +0 -28
- package/node/fintekkers/models/util/version_grpc_pb.js +1 -0
- package/node/fintekkers/models/util/version_pb.d.ts +33 -0
- package/node/fintekkers/models/util/version_pb.js +236 -0
- package/node/fintekkers/requests/index_composition/create_index_composition_request_pb.d.ts +13 -30
- package/node/fintekkers/requests/index_composition/create_index_composition_request_pb.js +68 -264
- package/node/fintekkers/requests/index_composition/get_index_composition_request_pb.d.ts +13 -30
- package/node/fintekkers/requests/index_composition/get_index_composition_request_pb.js +68 -264
- package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.js +35 -132
- package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.js +35 -132
- package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.js +35 -132
- package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.js +35 -132
- package/node/fintekkers/requests/position/query_position_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/position/query_position_request_pb.js +35 -132
- package/node/fintekkers/requests/position/query_position_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/position/query_position_response_pb.js +35 -132
- package/node/fintekkers/requests/price/create_price_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/price/create_price_request_pb.js +35 -132
- package/node/fintekkers/requests/price/create_price_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/price/create_price_response_pb.js +35 -132
- package/node/fintekkers/requests/price/query_price_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/price/query_price_request_pb.js +35 -132
- package/node/fintekkers/requests/price/query_price_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/price/query_price_response_pb.js +35 -132
- package/node/fintekkers/requests/security/create_security_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/create_security_request_pb.js +35 -132
- package/node/fintekkers/requests/security/create_security_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/create_security_response_pb.js +35 -132
- package/node/fintekkers/requests/security/get_field_values_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/get_field_values_request_pb.js +35 -132
- package/node/fintekkers/requests/security/get_field_values_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/get_field_values_response_pb.js +35 -132
- package/node/fintekkers/requests/security/get_fields_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/get_fields_response_pb.js +35 -132
- package/node/fintekkers/requests/security/query_security_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/query_security_request_pb.js +35 -132
- package/node/fintekkers/requests/security/query_security_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/security/query_security_response_pb.js +35 -132
- package/node/fintekkers/requests/transaction/create_transaction_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/transaction/create_transaction_request_pb.js +35 -132
- package/node/fintekkers/requests/transaction/create_transaction_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/transaction/create_transaction_response_pb.js +35 -132
- package/node/fintekkers/requests/transaction/query_transaction_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/transaction/query_transaction_request_pb.js +35 -132
- package/node/fintekkers/requests/transaction/query_transaction_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/transaction/query_transaction_response_pb.js +35 -132
- package/node/fintekkers/requests/util/delete_request_pb.d.ts +13 -30
- package/node/fintekkers/requests/util/delete_request_pb.js +68 -264
- package/node/fintekkers/requests/util/lock/lock_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/util/lock/lock_request_pb.js +35 -132
- package/node/fintekkers/requests/util/lock/lock_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/util/lock/lock_response_pb.js +35 -132
- package/node/fintekkers/requests/valuation/curve_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/valuation/curve_request_pb.js +35 -132
- package/node/fintekkers/requests/valuation/curve_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/valuation/curve_response_pb.js +35 -132
- package/node/fintekkers/requests/valuation/product_inputs.test.js +10 -17
- package/node/fintekkers/requests/valuation/product_inputs.test.js.map +1 -1
- package/node/fintekkers/requests/valuation/product_inputs.test.ts +10 -16
- package/node/fintekkers/requests/valuation/valuation_request_pb.d.ts +7 -15
- package/node/fintekkers/requests/valuation/valuation_request_pb.js +35 -132
- package/node/fintekkers/requests/valuation/valuation_response_pb.d.ts +7 -15
- package/node/fintekkers/requests/valuation/valuation_response_pb.js +35 -132
- package/node/wrappers/models/portfolio/portfolio.test.js +0 -2
- package/node/wrappers/models/portfolio/portfolio.test.js.map +1 -1
- package/node/wrappers/models/portfolio/portfolio.test.ts +0 -2
- package/node/wrappers/models/portfolio-price-transaction.lazy-hydrate.test.js +2 -3
- package/node/wrappers/models/portfolio-price-transaction.lazy-hydrate.test.js.map +1 -1
- package/node/wrappers/models/portfolio-price-transaction.lazy-hydrate.test.ts +2 -2
- package/node/wrappers/models/position/position.test.js +5 -6
- package/node/wrappers/models/position/position.test.js.map +1 -1
- package/node/wrappers/models/position/position.test.ts +5 -4
- package/node/wrappers/models/position/positionfilter.js +1 -1
- package/node/wrappers/models/position/positionfilter.js.map +1 -1
- package/node/wrappers/models/position/positionfilter.test.js +4 -2
- package/node/wrappers/models/position/positionfilter.test.js.map +1 -1
- package/node/wrappers/models/position/positionfilter.test.ts +3 -2
- package/node/wrappers/models/position/positionfilter.ts +1 -1
- package/node/wrappers/models/price/Price.cash.test.js +4 -5
- package/node/wrappers/models/price/Price.cash.test.js.map +1 -1
- package/node/wrappers/models/price/Price.cash.test.ts +2 -3
- package/node/wrappers/models/price/Price.js +2 -2
- package/node/wrappers/models/price/Price.js.map +1 -1
- package/node/wrappers/models/price/Price.test.js +4 -2
- package/node/wrappers/models/price/Price.test.js.map +1 -1
- package/node/wrappers/models/price/Price.test.ts +4 -2
- package/node/wrappers/models/price/Price.ts +2 -2
- package/node/wrappers/models/price/price_rules.test.js +9 -4
- package/node/wrappers/models/price/price_rules.test.js.map +1 -1
- package/node/wrappers/models/price/price_rules.test.ts +9 -4
- package/node/wrappers/models/security/BondSecurity.priceScale.test.js +2 -4
- package/node/wrappers/models/security/BondSecurity.priceScale.test.js.map +1 -1
- package/node/wrappers/models/security/BondSecurity.priceScale.test.ts +2 -3
- package/node/wrappers/models/security/BondSecurity.test.js +7 -13
- package/node/wrappers/models/security/BondSecurity.test.js.map +1 -1
- package/node/wrappers/models/security/BondSecurity.test.ts +7 -12
- package/node/wrappers/models/security/IndexSecurity.test.js +0 -8
- package/node/wrappers/models/security/IndexSecurity.test.js.map +1 -1
- package/node/wrappers/models/security/IndexSecurity.test.ts +0 -8
- package/node/wrappers/models/security/Issuance.test.js +6 -6
- package/node/wrappers/models/security/Issuance.test.js.map +1 -1
- package/node/wrappers/models/security/Issuance.test.ts +6 -5
- package/node/wrappers/models/security/MortgageBackedSecurity.fromPricerInputs.test.js +13 -14
- package/node/wrappers/models/security/MortgageBackedSecurity.fromPricerInputs.test.js.map +1 -1
- package/node/wrappers/models/security/MortgageBackedSecurity.fromPricerInputs.test.ts +13 -12
- package/node/wrappers/models/security/security-roundtrip.test.js +9 -21
- package/node/wrappers/models/security/security-roundtrip.test.js.map +1 -1
- package/node/wrappers/models/security/security-roundtrip.test.ts +9 -20
- package/node/wrappers/models/security/security.identifiers.test.js +0 -2
- package/node/wrappers/models/security/security.identifiers.test.js.map +1 -1
- package/node/wrappers/models/security/security.identifiers.test.ts +0 -2
- package/node/wrappers/models/security/security.tbillCoupon.test.js +3 -2
- package/node/wrappers/models/security/security.tbillCoupon.test.js.map +1 -1
- package/node/wrappers/models/security/security.tbillCoupon.test.ts +3 -2
- package/node/wrappers/models/security/security.test.js +14 -14
- package/node/wrappers/models/security/security.test.js.map +1 -1
- package/node/wrappers/models/security/security.test.ts +14 -13
- package/node/wrappers/models/transaction/transaction.derived.test.js +3 -9
- package/node/wrappers/models/transaction/transaction.derived.test.js.map +1 -1
- package/node/wrappers/models/transaction/transaction.derived.test.ts +3 -8
- package/node/wrappers/models/transaction/transaction.js +2 -2
- package/node/wrappers/models/transaction/transaction.js.map +1 -1
- package/node/wrappers/models/transaction/transaction.test.js +3 -3
- package/node/wrappers/models/transaction/transaction.test.js.map +1 -1
- package/node/wrappers/models/transaction/transaction.test.ts +3 -2
- package/node/wrappers/models/transaction/transaction.ts +2 -2
- package/node/wrappers/models/transaction/transaction_constructor.test.js +6 -9
- package/node/wrappers/models/transaction/transaction_constructor.test.js.map +1 -1
- package/node/wrappers/models/transaction/transaction_constructor.test.ts +6 -7
- package/node/wrappers/models/transaction/transaction_price_defaults.test.js +2 -10
- package/node/wrappers/models/transaction/transaction_price_defaults.test.js.map +1 -1
- package/node/wrappers/models/transaction/transaction_price_defaults.test.ts +2 -9
- package/node/wrappers/models/transaction/transaction_security_defaults.test.js +0 -6
- package/node/wrappers/models/transaction/transaction_security_defaults.test.js.map +1 -1
- package/node/wrappers/models/transaction/transaction_security_defaults.test.ts +0 -6
- package/node/wrappers/models/utils/date.test.js +0 -2
- package/node/wrappers/models/utils/date.test.js.map +1 -1
- package/node/wrappers/models/utils/date.test.ts +0 -2
- package/node/wrappers/models/utils/datetime.test.js +0 -2
- package/node/wrappers/models/utils/datetime.test.js.map +1 -1
- package/node/wrappers/models/utils/datetime.test.ts +0 -2
- package/node/wrappers/models/utils/decimal.d.ts +9 -28
- package/node/wrappers/models/utils/decimal.js +13 -52
- package/node/wrappers/models/utils/decimal.js.map +1 -1
- package/node/wrappers/models/utils/decimal.test.js +12 -68
- package/node/wrappers/models/utils/decimal.test.js.map +1 -1
- package/node/wrappers/models/utils/decimal.test.ts +14 -76
- package/node/wrappers/models/utils/decimal.ts +12 -60
- package/node/wrappers/models/utils/serialization.test.js +0 -4
- package/node/wrappers/models/utils/serialization.test.js.map +1 -1
- package/node/wrappers/models/utils/serialization.test.ts +0 -4
- package/node/wrappers/requests/position/QueryPositionRequest.js +1 -1
- package/node/wrappers/requests/position/QueryPositionRequest.js.map +1 -1
- package/node/wrappers/requests/position/QueryPositionRequest.ts +1 -1
- package/node/wrappers/requests/query-paging.test.js +4 -28
- package/node/wrappers/requests/query-paging.test.js.map +1 -1
- package/node/wrappers/requests/query-paging.test.ts +3 -36
- package/node/wrappers/services/portfolio-service/PortfolioService.js +3 -3
- package/node/wrappers/services/portfolio-service/PortfolioService.js.map +1 -1
- package/node/wrappers/services/portfolio-service/PortfolioService.ts +3 -3
- package/node/wrappers/services/portfolio-service/portfolioService.test.js +0 -2
- package/node/wrappers/services/portfolio-service/portfolioService.test.js.map +1 -1
- package/node/wrappers/services/portfolio-service/portfolioService.test.ts +0 -2
- package/node/wrappers/services/price-service/PriceService.js +3 -3
- package/node/wrappers/services/price-service/PriceService.js.map +1 -1
- package/node/wrappers/services/price-service/PriceService.ts +3 -3
- package/node/wrappers/services/price-service/price-wrapper.test.js +2 -6
- package/node/wrappers/services/price-service/price-wrapper.test.js.map +1 -1
- package/node/wrappers/services/price-service/price-wrapper.test.ts +2 -6
- package/node/wrappers/services/price-service/price.test.js +8 -17
- package/node/wrappers/services/price-service/price.test.js.map +1 -1
- package/node/wrappers/services/price-service/price.test.ts +8 -14
- package/node/wrappers/services/searchWithSecurities.test.js +2 -7
- package/node/wrappers/services/searchWithSecurities.test.js.map +1 -1
- package/node/wrappers/services/searchWithSecurities.test.ts +2 -6
- package/node/wrappers/services/security-service/SecurityService.js +3 -3
- package/node/wrappers/services/security-service/SecurityService.js.map +1 -1
- package/node/wrappers/services/security-service/SecurityService.ts +3 -3
- package/node/wrappers/services/security-service/security.test.js +3 -7
- package/node/wrappers/services/security-service/security.test.js.map +1 -1
- package/node/wrappers/services/security-service/security.test.ts +3 -6
- package/node/wrappers/services/transaction-service/TransactionService.js +3 -3
- package/node/wrappers/services/transaction-service/TransactionService.js.map +1 -1
- package/node/wrappers/services/transaction-service/TransactionService.ts +3 -3
- package/node/wrappers/services/transaction-service/transaction.test.js +3 -8
- package/node/wrappers/services/transaction-service/transaction.test.js.map +1 -1
- package/node/wrappers/services/transaction-service/transaction.test.ts +3 -6
- package/node/wrappers/util/link-resolver.js +3 -3
- package/node/wrappers/util/link-resolver.js.map +1 -1
- package/node/wrappers/util/link-resolver.test.js +4 -13
- package/node/wrappers/util/link-resolver.test.js.map +1 -1
- package/node/wrappers/util/link-resolver.test.ts +4 -12
- package/node/wrappers/util/link-resolver.ts +3 -3
- package/node/wrappers/util/object-types.d.ts +21 -47
- package/node/wrappers/util/object-types.js +19 -178
- package/node/wrappers/util/object-types.js.map +1 -1
- package/node/wrappers/util/object-types.test.js +50 -151
- package/node/wrappers/util/object-types.test.js.map +1 -1
- package/node/wrappers/util/object-types.test.ts +55 -170
- package/node/wrappers/util/object-types.ts +28 -182
- package/package.json +1 -1
- package/node/wrappers/models/position/position.test copy.js +0 -107
- package/node/wrappers/models/position/position.test copy.js.map +0 -1
- package/node/wrappers/models/utils/decimal.legacy.test.d.ts +0 -1
- package/node/wrappers/models/utils/decimal.legacy.test.js +0 -174
- package/node/wrappers/models/utils/decimal.legacy.test.js.map +0 -1
- package/node/wrappers/models/utils/decimal.legacy.test.ts +0 -158
- package/node/wrappers/models/utils/decimal.typings.test.d.ts +0 -1
- package/node/wrappers/models/utils/decimal.typings.test.js +0 -39
- package/node/wrappers/models/utils/decimal.typings.test.js.map +0 -1
- package/node/wrappers/models/utils/decimal.typings.test.ts +0 -16
- package/node/wrappers/util/object-type-legacy.json +0 -21
|
@@ -1,62 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Object type and version (LM-297, LM-318).
|
|
3
3
|
*
|
|
4
|
-
* Every message
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* throws: an unknown object_class gives OBJECT_TYPE_UNKNOWN and a malformed
|
|
11
|
-
* version gives 0.0.0. Empty strings are the proto3 default and fall back
|
|
12
|
-
* silently.
|
|
13
|
-
*
|
|
14
|
-
* google-protobuf cannot read the `(legacy_object_class)` options at runtime,
|
|
15
|
-
* so the string map comes from object-type-legacy.json, generated by
|
|
16
|
-
* scripts/gen-object-type-legacy-map.py. See docs/adr/compact_object_type_and_version.md.
|
|
4
|
+
* Every message that names its type carries `ObjectTypeProto object_type = 1`
|
|
5
|
+
* and `VersionProto version = 2`. Writers call `stamp`, which sets the type and
|
|
6
|
+
* `SCHEMA_VERSION`. Readers call `readType` / `readVersion`. The old
|
|
7
|
+
* `object_class` / `version` strings were replaced in place by LM-318: bytes
|
|
8
|
+
* written before it are not readable. See
|
|
9
|
+
* docs/adr/compact_object_type_and_version.md.
|
|
17
10
|
*/
|
|
18
11
|
import { ObjectTypeProto } from '../../fintekkers/models/util/object_type_pb';
|
|
19
|
-
|
|
12
|
+
import { VersionProto } from '../../fintekkers/models/util/version_pb';
|
|
13
|
+
/** Any generated message that carries object_type and version. */
|
|
20
14
|
export interface ObjectTyped {
|
|
21
|
-
getObjectClass(): string;
|
|
22
|
-
setObjectClass(value: string): unknown;
|
|
23
|
-
getVersion(): string;
|
|
24
|
-
setVersion(value: string): unknown;
|
|
25
15
|
getObjectType(): ObjectTypeProto;
|
|
26
16
|
setObjectType(value: ObjectTypeProto): unknown;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
setVersionMinor(value: number): unknown;
|
|
31
|
-
getVersionPatch(): number;
|
|
32
|
-
setVersionPatch(value: number): unknown;
|
|
17
|
+
hasVersion(): boolean;
|
|
18
|
+
getVersion(): VersionProto | undefined;
|
|
19
|
+
setVersion(value?: VersionProto): unknown;
|
|
33
20
|
}
|
|
34
21
|
/** [major, minor, patch], each a uint32. */
|
|
35
22
|
export type Version = [number, number, number];
|
|
36
|
-
/** The
|
|
37
|
-
export declare
|
|
23
|
+
/** The schema version `stamp` writes. Not the library release. */
|
|
24
|
+
export declare const SCHEMA_VERSION: Version;
|
|
38
25
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* OBJECT_TYPE_QUERY_SECURITY_REQUEST.
|
|
26
|
+
* Sets object_type and version (`SCHEMA_VERSION`) on `message`; returns it.
|
|
27
|
+
* `objectType` is the message's own ObjectTypeProto value.
|
|
42
28
|
*/
|
|
43
|
-
export declare function
|
|
44
|
-
/** '1.2.3' -> [1, 2, 3]; null unless exactly three decimal uint32 parts. */
|
|
45
|
-
export declare function parseVersion(version: string): Version | null;
|
|
29
|
+
export declare function stamp<T extends ObjectTyped>(message: T, objectType: ObjectTypeProto): T;
|
|
46
30
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* empty or three uint32 parts.
|
|
31
|
+
* The message's ObjectTypeProto value; OBJECT_TYPE_UNKNOWN when unset. A value
|
|
32
|
+
* added after this build is returned as its number.
|
|
50
33
|
*/
|
|
51
|
-
export declare function stamp<T extends ObjectTyped>(message: T, objectType: ObjectTypeProto, objectClass: string, version: string): T;
|
|
52
|
-
/** The message's ObjectTypeProto value: object_type, else the object_class string. */
|
|
53
34
|
export declare function readType(message: ObjectTyped): ObjectTypeProto;
|
|
54
|
-
/** The message's [major, minor, patch]
|
|
55
|
-
export declare function readVersion(message: ObjectTyped): Version;
|
|
56
|
-
/**
|
|
57
|
-
* Fills the compact fields from the strings where they are unset; returns `message`.
|
|
58
|
-
* The strings are kept, so re-serialising writes both forms.
|
|
59
|
-
*/
|
|
60
|
-
export declare function upgrade<T extends ObjectTyped>(message: T): T;
|
|
61
|
-
/** Forgets which strings have warned. Tests only. */
|
|
62
|
-
export declare function resetWarningsForTests(): void;
|
|
35
|
+
/** The message's [major, minor, patch], or undefined when version is absent. */
|
|
36
|
+
export declare function readVersion(message: ObjectTyped): Version | undefined;
|
|
@@ -1,193 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
3
|
+
exports.readVersion = exports.readType = exports.stamp = exports.SCHEMA_VERSION = void 0;
|
|
4
|
+
const version_pb_1 = require("../../fintekkers/models/util/version_pb");
|
|
5
|
+
/** The schema version `stamp` writes. Not the library release. */
|
|
6
|
+
exports.SCHEMA_VERSION = [0, 0, 1];
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* Every message with `string object_class = 1` and `string version = 2` also
|
|
11
|
-
* carries `ObjectTypeProto object_type = 1001` and `uint32 version_major /
|
|
12
|
-
* version_minor / version_patch = 1002-1004`. Writers call `stamp`, which sets
|
|
13
|
-
* the strings and the new fields. Readers call `readType` / `readVersion` (or
|
|
14
|
-
* `upgrade`), which use the new fields and fall back to the deprecated strings,
|
|
15
|
-
* logging one `console.warn` per distinct pair of strings. A fallback never
|
|
16
|
-
* throws: an unknown object_class gives OBJECT_TYPE_UNKNOWN and a malformed
|
|
17
|
-
* version gives 0.0.0. Empty strings are the proto3 default and fall back
|
|
18
|
-
* silently.
|
|
19
|
-
*
|
|
20
|
-
* google-protobuf cannot read the `(legacy_object_class)` options at runtime,
|
|
21
|
-
* so the string map comes from object-type-legacy.json, generated by
|
|
22
|
-
* scripts/gen-object-type-legacy-map.py. See docs/adr/compact_object_type_and_version.md.
|
|
8
|
+
* Sets object_type and version (`SCHEMA_VERSION`) on `message`; returns it.
|
|
9
|
+
* `objectType` is the message's own ObjectTypeProto value.
|
|
23
10
|
*/
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
const UINT32_MAX = 0xffffffff;
|
|
27
|
-
const VERSION_PATTERN = /^[0-9]+\.[0-9]+\.[0-9]+$/;
|
|
28
|
-
function buildLegacyMap() {
|
|
29
|
-
const map = new Map();
|
|
30
|
-
for (const [legacy, name] of Object.entries(object_type_legacy_json_1.default.legacy_object_class)) {
|
|
31
|
-
if (!Object.prototype.hasOwnProperty.call(object_type_pb_1.ObjectTypeProto, name)) {
|
|
32
|
-
throw new Error(`object-type-legacy.json names ${name}, which ObjectTypeProto lacks: regenerate it`);
|
|
33
|
-
}
|
|
34
|
-
map.set(legacy, object_type_pb_1.ObjectTypeProto[name]);
|
|
35
|
-
}
|
|
36
|
-
return map;
|
|
37
|
-
}
|
|
38
|
-
const LEGACY = buildLegacyMap();
|
|
39
|
-
const warned = new Set();
|
|
40
|
-
const UNKNOWN_NAME = Object.keys(object_type_pb_1.ObjectTypeProto)
|
|
41
|
-
.find((name) => object_type_pb_1.ObjectTypeProto[name] === object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN);
|
|
42
|
-
const PREFIX = UNKNOWN_NAME.slice(0, -'UNKNOWN'.length);
|
|
43
|
-
const CAMEL_BOUNDARY = /(?<=[a-z0-9])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])/g;
|
|
44
|
-
const ownTypes = new WeakMap();
|
|
45
|
-
/** The ObjectTypeProto value an object_class string stands for, or OBJECT_TYPE_UNKNOWN. */
|
|
46
|
-
function fromLegacy(objectClass) {
|
|
47
|
-
var _a;
|
|
48
|
-
return (_a = LEGACY.get(objectClass)) !== null && _a !== void 0 ? _a : object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN;
|
|
49
|
-
}
|
|
50
|
-
exports.fromLegacy = fromLegacy;
|
|
51
|
-
/**
|
|
52
|
-
* The ObjectTypeProto value named for a message type, or OBJECT_TYPE_UNKNOWN.
|
|
53
|
-
* Uses the enum's naming rule: `QuerySecurityRequestProto` ->
|
|
54
|
-
* OBJECT_TYPE_QUERY_SECURITY_REQUEST.
|
|
55
|
-
*/
|
|
56
|
-
function ownType(messageName) {
|
|
57
|
-
const base = messageName.endsWith('Proto') ? messageName.slice(0, -'Proto'.length) : messageName;
|
|
58
|
-
const name = PREFIX + base.replace(CAMEL_BOUNDARY, '_').toUpperCase();
|
|
59
|
-
return Object.prototype.hasOwnProperty.call(object_type_pb_1.ObjectTypeProto, name)
|
|
60
|
-
? object_type_pb_1.ObjectTypeProto[name]
|
|
61
|
-
: object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN;
|
|
62
|
-
}
|
|
63
|
-
exports.ownType = ownType;
|
|
64
|
-
/**
|
|
65
|
-
* The generated class name of `message`. google-protobuf's classes are
|
|
66
|
-
* anonymous functions, but each generated module exports its classes under
|
|
67
|
-
* the global `proto` namespace by full name, so search that.
|
|
68
|
-
*/
|
|
69
|
-
function messageName(ctor, namespace, depth = 0) {
|
|
70
|
-
if (typeof namespace !== 'object' || namespace === null || depth > 8)
|
|
71
|
-
return undefined;
|
|
72
|
-
for (const [key, value] of Object.entries(namespace)) {
|
|
73
|
-
if (value === ctor)
|
|
74
|
-
return key;
|
|
75
|
-
const found = messageName(ctor, value, depth + 1);
|
|
76
|
-
if (found !== undefined)
|
|
77
|
-
return found;
|
|
78
|
-
}
|
|
79
|
-
return undefined;
|
|
80
|
-
}
|
|
81
|
-
function ownTypeOf(message) {
|
|
82
|
-
const ctor = message.constructor;
|
|
83
|
-
let type = ownTypes.get(ctor);
|
|
84
|
-
if (type === undefined) {
|
|
85
|
-
const name = messageName(ctor, globalThis.proto);
|
|
86
|
-
type = name === undefined ? object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN : ownType(name);
|
|
87
|
-
ownTypes.set(ctor, type);
|
|
88
|
-
}
|
|
89
|
-
return type;
|
|
90
|
-
}
|
|
91
|
-
/** '1.2.3' -> [1, 2, 3]; null unless exactly three decimal uint32 parts. */
|
|
92
|
-
function parseVersion(version) {
|
|
93
|
-
if (!VERSION_PATTERN.test(version))
|
|
94
|
-
return null;
|
|
95
|
-
const parts = version.split('.').map(Number);
|
|
96
|
-
if (parts.some((p) => p > UINT32_MAX))
|
|
97
|
-
return null;
|
|
98
|
-
return [parts[0], parts[1], parts[2]];
|
|
99
|
-
}
|
|
100
|
-
exports.parseVersion = parseVersion;
|
|
101
|
-
/**
|
|
102
|
-
* Sets object_class / version and their compact form on `message`; returns it.
|
|
103
|
-
* `objectType` is the message's own ObjectTypeProto value. `version` must be
|
|
104
|
-
* empty or three uint32 parts.
|
|
105
|
-
*/
|
|
106
|
-
function stamp(message, objectType, objectClass, version) {
|
|
107
|
-
const parts = version ? parseVersion(version) : [0, 0, 0];
|
|
108
|
-
if (parts === null) {
|
|
109
|
-
throw new Error(`version must be MAJOR.MINOR.PATCH, got '${version}'`);
|
|
110
|
-
}
|
|
111
|
-
message.setObjectClass(objectClass);
|
|
112
|
-
message.setVersion(version);
|
|
11
|
+
function stamp(message, objectType) {
|
|
12
|
+
const [major, minor, patch] = exports.SCHEMA_VERSION;
|
|
113
13
|
message.setObjectType(objectType);
|
|
114
|
-
|
|
14
|
+
message.setVersion(new version_pb_1.VersionProto().setMajor(major).setMinor(minor).setPatch(patch));
|
|
115
15
|
return message;
|
|
116
16
|
}
|
|
117
17
|
exports.stamp = stamp;
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
}
|
|
123
|
-
function compactVersion(message) {
|
|
124
|
-
return [message.getVersionMajor(), message.getVersionMinor(), message.getVersionPatch()];
|
|
125
|
-
}
|
|
126
|
-
function decode(message) {
|
|
127
|
-
const objectClass = message.getObjectClass();
|
|
128
|
-
const versionString = message.getVersion();
|
|
129
|
-
let objectType = message.getObjectType();
|
|
130
|
-
let version = compactVersion(message);
|
|
131
|
-
const problems = [];
|
|
132
|
-
let usedStrings = false;
|
|
133
|
-
if (objectType === object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN && objectClass) {
|
|
134
|
-
usedStrings = true;
|
|
135
|
-
objectType = fromLegacy(objectClass);
|
|
136
|
-
if (objectType === object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN) {
|
|
137
|
-
problems.push(' (unknown object_class, using OBJECT_TYPE_UNKNOWN)');
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
// Some strings were written on more than one message type (e.g.
|
|
141
|
-
// 'SecurityRequest' on the create and query requests): the message's
|
|
142
|
-
// own type wins over the value the string sits on.
|
|
143
|
-
const own = ownTypeOf(message);
|
|
144
|
-
if (own !== object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN)
|
|
145
|
-
objectType = own;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
if (version.every((p) => p === 0) && versionString) {
|
|
149
|
-
usedStrings = true;
|
|
150
|
-
const parsed = parseVersion(versionString);
|
|
151
|
-
if (parsed === null) {
|
|
152
|
-
problems.push(' (malformed version, using 0.0.0)');
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
version = parsed;
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
const key = `${objectClass}\u0000${versionString}`;
|
|
159
|
-
if (usedStrings && !warned.has(key)) {
|
|
160
|
-
warned.add(key);
|
|
161
|
-
console.warn(`${message.constructor.name} read from deprecated strings object_class='${objectClass}' ` +
|
|
162
|
-
`version='${versionString}'${problems.join('')}; re-save it to write object_type and ` +
|
|
163
|
-
'version_major/minor/patch (LM-297)');
|
|
164
|
-
}
|
|
165
|
-
return { objectType, version };
|
|
166
|
-
}
|
|
167
|
-
/** The message's ObjectTypeProto value: object_type, else the object_class string. */
|
|
18
|
+
/**
|
|
19
|
+
* The message's ObjectTypeProto value; OBJECT_TYPE_UNKNOWN when unset. A value
|
|
20
|
+
* added after this build is returned as its number.
|
|
21
|
+
*/
|
|
168
22
|
function readType(message) {
|
|
169
|
-
return
|
|
23
|
+
return message.getObjectType();
|
|
170
24
|
}
|
|
171
25
|
exports.readType = readType;
|
|
172
|
-
/** The message's [major, minor, patch]
|
|
26
|
+
/** The message's [major, minor, patch], or undefined when version is absent. */
|
|
173
27
|
function readVersion(message) {
|
|
174
|
-
|
|
28
|
+
const version = message.getVersion();
|
|
29
|
+
if (!message.hasVersion() || version === undefined)
|
|
30
|
+
return undefined;
|
|
31
|
+
return [version.getMajor(), version.getMinor(), version.getPatch()];
|
|
175
32
|
}
|
|
176
33
|
exports.readVersion = readVersion;
|
|
177
|
-
/**
|
|
178
|
-
* Fills the compact fields from the strings where they are unset; returns `message`.
|
|
179
|
-
* The strings are kept, so re-serialising writes both forms.
|
|
180
|
-
*/
|
|
181
|
-
function upgrade(message) {
|
|
182
|
-
const { objectType, version } = decode(message);
|
|
183
|
-
message.setObjectType(objectType);
|
|
184
|
-
setCompactVersion(message, version);
|
|
185
|
-
return message;
|
|
186
|
-
}
|
|
187
|
-
exports.upgrade = upgrade;
|
|
188
|
-
/** Forgets which strings have warned. Tests only. */
|
|
189
|
-
function resetWarningsForTests() {
|
|
190
|
-
warned.clear();
|
|
191
|
-
}
|
|
192
|
-
exports.resetWarningsForTests = resetWarningsForTests;
|
|
193
34
|
//# sourceMappingURL=object-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-types.js","sourceRoot":"","sources":["object-types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"object-types.js","sourceRoot":"","sources":["object-types.ts"],"names":[],"mappings":";;;AAWA,wEAAuE;AAcvE,kEAAkE;AACrD,QAAA,cAAc,GAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAEjD;;;GAGG;AACH,SAAgB,KAAK,CAAwB,OAAU,EAAE,UAA2B;IAClF,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,sBAAc,CAAC;IAC7C,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAC,IAAI,yBAAY,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACvF,OAAO,OAAO,CAAC;AACjB,CAAC;AALD,sBAKC;AAED;;;GAGG;AACH,SAAgB,QAAQ,CAAC,OAAoB;IAC3C,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;AACjC,CAAC;AAFD,4BAEC;AAED,gFAAgF;AAChF,SAAgB,WAAW,CAAC,OAAoB;IAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACrE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;AACtE,CAAC;AAJD,kCAIC"}
|
|
@@ -35,9 +35,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
35
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
36
|
};
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
//
|
|
39
|
-
//
|
|
40
|
-
// test-fixtures/object-type-legacy.json, which Java, Python and Rust also load.
|
|
38
|
+
// Object type and version (LM-297, LM-318): `stamp` writes object_type = 1
|
|
39
|
+
// and version = 2 (0.0.1), and bytes from earlier releases are not readable.
|
|
41
40
|
const fs = __importStar(require("fs"));
|
|
42
41
|
const path = __importStar(require("path"));
|
|
43
42
|
const decimal_js_1 = require("decimal.js");
|
|
@@ -67,125 +66,36 @@ const PriceService_1 = require("../services/price-service/PriceService");
|
|
|
67
66
|
const SecurityService_1 = require("../services/security-service/SecurityService");
|
|
68
67
|
const TransactionService_1 = require("../services/transaction-service/TransactionService");
|
|
69
68
|
const PortfolioService_1 = require("../services/portfolio-service/PortfolioService");
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
88
|
-
for (const [name, cls] of Object.entries(require(full))) {
|
|
89
|
-
classes.set(`${pkg}.${name}`, cls);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
walk(root);
|
|
95
|
-
return classes;
|
|
96
|
-
}
|
|
97
|
-
const CLASSES = messageClasses();
|
|
98
|
-
function decode(c) {
|
|
99
|
-
const cls = CLASSES.get(c.message);
|
|
100
|
-
if (!cls)
|
|
101
|
-
throw new Error(`no generated class for ${c.message}`);
|
|
102
|
-
return cls.deserializeBinary(Buffer.from(c.bytes, 'base64'));
|
|
103
|
-
}
|
|
104
|
-
/** Field numbers present at the top level of an encoded message. */
|
|
105
|
-
function topLevelFieldNumbers(data) {
|
|
106
|
-
const numbers = [];
|
|
107
|
-
let i = 0;
|
|
108
|
-
const varint = () => {
|
|
109
|
-
let result = 0;
|
|
110
|
-
let scale = 1;
|
|
111
|
-
for (;;) {
|
|
112
|
-
const b = data[i++];
|
|
113
|
-
result += (b & 0x7f) * scale;
|
|
114
|
-
scale *= 128;
|
|
115
|
-
if (!(b & 0x80))
|
|
116
|
-
return result;
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
while (i < data.length) {
|
|
120
|
-
const key = varint();
|
|
121
|
-
numbers.push(Math.floor(key / 8));
|
|
122
|
-
const wireType = key % 8;
|
|
123
|
-
if (wireType === 0)
|
|
124
|
-
varint();
|
|
125
|
-
else if (wireType === 1)
|
|
126
|
-
i += 8;
|
|
127
|
-
else if (wireType === 2) {
|
|
128
|
-
const length = varint();
|
|
129
|
-
i += length;
|
|
130
|
-
}
|
|
131
|
-
else if (wireType === 5)
|
|
132
|
-
i += 4;
|
|
133
|
-
else
|
|
134
|
-
throw new Error(`unexpected wire type ${wireType}`);
|
|
135
|
-
}
|
|
136
|
-
return numbers;
|
|
137
|
-
}
|
|
138
|
-
let warn;
|
|
139
|
-
beforeEach(() => {
|
|
140
|
-
objectTypes.resetWarningsForTests();
|
|
141
|
-
warn = jest.spyOn(console, 'warn').mockImplementation(() => undefined);
|
|
69
|
+
// A PriceProto written by ledger-models v0.4.33: object_class / version
|
|
70
|
+
// strings in fields 1 and 2.
|
|
71
|
+
const OLD_PRICE = path.resolve(__dirname, '../../../../ledger-models-protos/fixtures/legacy_v0433/price.bin');
|
|
72
|
+
// ---- stamp round-trips (metric 2) ----
|
|
73
|
+
test('a stamped price round-trips type and version', () => {
|
|
74
|
+
const price = objectTypes.stamp(new price_pb_1.PriceProto(), object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE);
|
|
75
|
+
const bytes = price.serializeBinary();
|
|
76
|
+
// Exactly field 1 (varint 11) and field 2 ({patch: 1}): nothing at the
|
|
77
|
+
// removed 1001-1004.
|
|
78
|
+
expect(Array.from(bytes)).toEqual([0x08, 11, 0x12, 0x02, 0x18, 0x01]);
|
|
79
|
+
const reread = price_pb_1.PriceProto.deserializeBinary(bytes);
|
|
80
|
+
expect(objectTypes.readType(reread)).toBe(object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE);
|
|
81
|
+
expect(objectTypes.readVersion(reread)).toEqual([0, 0, 1]);
|
|
82
|
+
const version = reread.getVersion();
|
|
83
|
+
expect([version.getMajor(), version.getMinor(), version.getPatch()]).toEqual([0, 0, 1]);
|
|
84
|
+
// Nothing unknown kept on re-serialising.
|
|
85
|
+
expect(Array.from(reread.serializeBinary())).toEqual(Array.from(bytes));
|
|
142
86
|
});
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
objectTypes.
|
|
87
|
+
test('an unstamped message reads as unknown and absent', () => {
|
|
88
|
+
const price = price_pb_1.PriceProto.deserializeBinary(new price_pb_1.PriceProto().serializeBinary());
|
|
89
|
+
expect(objectTypes.readType(price)).toBe(object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN);
|
|
90
|
+
expect(objectTypes.readVersion(price)).toBeUndefined();
|
|
146
91
|
});
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
expect(objectTypes.readType(message)).toBe(object_type_pb_1.ObjectTypeProto[c.expect.object_type]);
|
|
153
|
-
expect(objectTypes.readVersion(message)).toEqual(c.expect.version);
|
|
154
|
-
expect(fallbackWarnings()).toBe(c.expect.warns ? 1 : 0);
|
|
155
|
-
});
|
|
156
|
-
test('re-serialises with the compact fields once upgraded', () => {
|
|
157
|
-
const data = objectTypes.upgrade(decode(c)).serializeBinary();
|
|
158
|
-
const expected = {
|
|
159
|
-
object_type: object_type_pb_1.ObjectTypeProto[c.expect.object_type],
|
|
160
|
-
version_major: c.expect.version[0],
|
|
161
|
-
version_minor: c.expect.version[1],
|
|
162
|
-
version_patch: c.expect.version[2],
|
|
163
|
-
};
|
|
164
|
-
const present = topLevelFieldNumbers(data);
|
|
165
|
-
for (const [name, number] of Object.entries(COMPACT_NUMBERS)) {
|
|
166
|
-
expect([name, present.includes(number)]).toEqual([name, expected[name] !== 0]);
|
|
167
|
-
}
|
|
168
|
-
const reread = CLASSES.get(c.message).deserializeBinary(data);
|
|
169
|
-
expect([reread.getObjectType(), reread.getVersionMajor(), reread.getVersionMinor(), reread.getVersionPatch()])
|
|
170
|
-
.toEqual([expected.object_type, expected.version_major, expected.version_minor, expected.version_patch]);
|
|
171
|
-
expect([reread.getObjectClass(), reread.getVersion()]).toEqual([c.object_class, c.version]);
|
|
172
|
-
});
|
|
173
|
-
});
|
|
174
|
-
// ---- Reading the strings is deprecated (metric 4) ----
|
|
175
|
-
test('three strings-only decodes of one type warn once', () => {
|
|
176
|
-
const c = CASES.find((row) => row.name === 'js-PositionFilterProto');
|
|
177
|
-
for (let i = 0; i < 3; i++) {
|
|
178
|
-
objectTypes.upgrade(decode(c));
|
|
179
|
-
}
|
|
180
|
-
expect(fallbackWarnings()).toBe(1);
|
|
92
|
+
// ---- Old bytes are not readable (metric 3) ----
|
|
93
|
+
test('bytes from v0.4.33 are not readable', () => {
|
|
94
|
+
// Field 2 held the string "0.0.1", which does not parse as a VersionProto.
|
|
95
|
+
const old = new Uint8Array(fs.readFileSync(OLD_PRICE));
|
|
96
|
+
expect(() => price_pb_1.PriceProto.deserializeBinary(old)).toThrow();
|
|
181
97
|
});
|
|
182
|
-
|
|
183
|
-
const message = objectTypes.stamp(new price_pb_1.PriceProto(), object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE, 'Price', '0.0.1');
|
|
184
|
-
objectTypes.readType(message);
|
|
185
|
-
objectTypes.readVersion(message);
|
|
186
|
-
expect(fallbackWarnings()).toBe(0);
|
|
187
|
-
});
|
|
188
|
-
// ---- Writers set both forms (metric 2) ----
|
|
98
|
+
// ---- Every library writer stamps the new form (metric 2) ----
|
|
189
99
|
/** A service with its gRPC client swapped for one that records each request. */
|
|
190
100
|
function capturingService(cls, response) {
|
|
191
101
|
const requests = [];
|
|
@@ -243,41 +153,41 @@ function lastRequest(cls, call) {
|
|
|
243
153
|
}
|
|
244
154
|
const LIBRARY_WRITERS = [
|
|
245
155
|
['Price.fromSimple', () => __awaiter(void 0, void 0, void 0, function* () { return Price_1.default.fromSimple(uuid_1.UUID.random().toString(), 1, new Date()).proto; }),
|
|
246
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE
|
|
156
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE],
|
|
247
157
|
['Price.create', () => __awaiter(void 0, void 0, void 0, function* () { return Price_1.default.create(new decimal_js_1.Decimal(1), security(), datetime_1.ZonedDateTime.now()).proto; }),
|
|
248
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE
|
|
158
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE],
|
|
249
159
|
['PositionFilter.toProto', () => __awaiter(void 0, void 0, void 0, function* () { return filter().toProto(); }),
|
|
250
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_POSITION_FILTER
|
|
160
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_POSITION_FILTER],
|
|
251
161
|
['QueryPositionRequest.toProto', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
252
162
|
return new QueryPositionRequest_1.QueryPositionRequest(filter(), position_pb_1.PositionTypeProto.TRANSACTION, position_pb_1.PositionViewProto.DEFAULT_VIEW, [], [], datetime_1.ZonedDateTime.now()).toProto();
|
|
253
163
|
}),
|
|
254
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_POSITION_REQUEST
|
|
164
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_POSITION_REQUEST],
|
|
255
165
|
['Transaction', () => __awaiter(void 0, void 0, void 0, function* () { return transaction().proto; }),
|
|
256
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_TRANSACTION
|
|
166
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_TRANSACTION],
|
|
257
167
|
['Transaction strategy allocation', () => __awaiter(void 0, void 0, void 0, function* () { return transaction().proto.getStrategyAllocation(); }),
|
|
258
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_STRATEGY_ALLOCATION
|
|
168
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_STRATEGY_ALLOCATION],
|
|
259
169
|
['PriceService.validateCreateOrUpdate', () => lastRequest(PriceService_1.PriceService, (s) => s.validateCreateOrUpdate(new price_pb_1.PriceProto())),
|
|
260
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST
|
|
170
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST],
|
|
261
171
|
['PriceService.search', () => lastRequest(PriceService_1.PriceService, (s) => s.search(asOf, filter())),
|
|
262
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PRICE_REQUEST
|
|
172
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PRICE_REQUEST],
|
|
263
173
|
['SecurityService.validateCreateSecurity', () => lastRequest(SecurityService_1.SecurityService, (s) => s.validateCreateSecurity(new security_pb_1.SecurityProto())),
|
|
264
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST
|
|
174
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST],
|
|
265
175
|
['SecurityService.searchSecurity', () => lastRequest(SecurityService_1.SecurityService, (s) => s.searchSecurity(asOf, filter())),
|
|
266
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST
|
|
176
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST],
|
|
267
177
|
['TransactionService.validateCreateTransaction', () => lastRequest(TransactionService_1.TransactionService, (s) => s.validateCreateTransaction({ proto: new transaction_pb_1.TransactionProto() })),
|
|
268
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST
|
|
178
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST],
|
|
269
179
|
['TransactionService.searchTransaction', () => lastRequest(TransactionService_1.TransactionService, (s) => s.searchTransaction(asOf, filter())),
|
|
270
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST
|
|
180
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST],
|
|
271
181
|
['PortfolioService.validateCreatePortfolio', () => lastRequest(PortfolioService_1.PortfolioService, (s) => s.validateCreatePortfolio(new portfolio_pb_1.PortfolioProto())),
|
|
272
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST
|
|
182
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST],
|
|
273
183
|
['PortfolioService.searchPortfolio', () => lastRequest(PortfolioService_1.PortfolioService, (s) => s.searchPortfolio(asOf, filter())),
|
|
274
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST
|
|
184
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST],
|
|
275
185
|
['LinkResolver securities', () => __awaiter(void 0, void 0, void 0, function* () { return (yield linkResolverRequests())[0]; }),
|
|
276
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST
|
|
186
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST],
|
|
277
187
|
['LinkResolver portfolios', () => __awaiter(void 0, void 0, void 0, function* () { return (yield linkResolverRequests())[1]; }),
|
|
278
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST
|
|
188
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST],
|
|
279
189
|
['LinkResolver transactions', () => __awaiter(void 0, void 0, void 0, function* () { return (yield linkResolverRequests())[2]; }),
|
|
280
|
-
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST
|
|
190
|
+
object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST],
|
|
281
191
|
];
|
|
282
192
|
function transaction() {
|
|
283
193
|
return new transaction_1.default({
|
|
@@ -291,21 +201,10 @@ function transaction() {
|
|
|
291
201
|
quantity: new decimal_js_1.Decimal('10'),
|
|
292
202
|
});
|
|
293
203
|
}
|
|
294
|
-
test.each(LIBRARY_WRITERS)('%s
|
|
204
|
+
test.each(LIBRARY_WRITERS)('%s stamps the type and schema version', (_name, build, type) => __awaiter(void 0, void 0, void 0, function* () {
|
|
295
205
|
const message = yield build();
|
|
296
|
-
expect(
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
expect(message.getObjectType()).toBe(type);
|
|
300
|
-
if (objectClass) {
|
|
301
|
-
expect(objectTypes.fromLegacy(objectClass)).not.toBe(object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_UNKNOWN);
|
|
302
|
-
}
|
|
303
|
-
expect([message.getVersionMajor(), message.getVersionMinor(), message.getVersionPatch()])
|
|
304
|
-
.toEqual(objectTypes.parseVersion(version));
|
|
305
|
-
expect(objectTypes.readVersion(message)).toEqual(objectTypes.parseVersion(version));
|
|
306
|
-
expect(fallbackWarnings()).toBe(0);
|
|
206
|
+
expect(objectTypes.readType(message)).toBe(type);
|
|
207
|
+
expect(objectTypes.readVersion(message)).toEqual(objectTypes.SCHEMA_VERSION);
|
|
208
|
+
expect(objectTypes.SCHEMA_VERSION).toEqual([0, 0, 1]);
|
|
307
209
|
}));
|
|
308
|
-
test('stamp rejects a malformed version', () => {
|
|
309
|
-
expect(() => objectTypes.stamp(new price_pb_1.PriceProto(), object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_PRICE, 'Price', '1.2')).toThrow();
|
|
310
|
-
});
|
|
311
210
|
//# sourceMappingURL=object-types.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-types.test.js","sourceRoot":"","sources":["object-types.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"object-types.test.js","sourceRoot":"","sources":["object-types.test.ts"],"names":[],"mappings":"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"}
|