@layerzerolabs/protocol-stellar-v2 0.2.12 → 0.2.15
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/.turbo/turbo-build.log +384 -278
- package/.turbo/turbo-lint.log +110 -78
- package/.turbo/turbo-test.log +1248 -1014
- package/Cargo.lock +130 -3
- package/Cargo.toml +2 -1
- package/contracts/common-macros/src/contract_impl.rs +6 -1
- package/contracts/common-macros/src/lib.rs +47 -8
- package/contracts/common-macros/src/ownable.rs +7 -25
- package/contracts/common-macros/src/storage.rs +1 -1
- package/contracts/common-macros/src/tests/contract_impl.rs +5 -0
- package/contracts/common-macros/src/tests/mod.rs +1 -0
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_impl__snapshot_generated_contract_impl_code.snap +23 -7
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ownable__snapshot_generated_ownable_code.snap +5 -25
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__storage__snapshot_generated_storage_code.snap +48 -48
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +5 -25
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +21 -0
- package/contracts/common-macros/src/tests/upgradeable.rs +31 -0
- package/contracts/common-macros/src/ttl_configurable.rs +14 -44
- package/contracts/common-macros/src/upgradeable.rs +76 -0
- package/contracts/endpoint-v2/src/endpoint_v2.rs +25 -1
- package/contracts/endpoint-v2/src/tests/endpoint_setup.rs +175 -8
- package/contracts/endpoint-v2/src/tests/endpoint_v2/build_outbound_packet.rs +76 -0
- package/contracts/endpoint-v2/src/tests/endpoint_v2/clear.rs +342 -159
- package/contracts/endpoint-v2/src/tests/endpoint_v2/delegate.rs +3 -15
- package/contracts/endpoint-v2/src/tests/endpoint_v2/initializable.rs +20 -31
- package/contracts/endpoint-v2/src/tests/endpoint_v2/lz_receive_alert.rs +126 -164
- package/contracts/endpoint-v2/src/tests/endpoint_v2/mod.rs +1 -0
- package/contracts/endpoint-v2/src/tests/endpoint_v2/native_token.rs +0 -1
- package/contracts/endpoint-v2/src/tests/endpoint_v2/owner.rs +0 -1
- package/contracts/endpoint-v2/src/tests/endpoint_v2/pay_messaging_fees.rs +311 -304
- package/contracts/endpoint-v2/src/tests/endpoint_v2/quote.rs +423 -96
- package/contracts/endpoint-v2/src/tests/endpoint_v2/recover_token.rs +1 -1
- package/contracts/endpoint-v2/src/tests/endpoint_v2/require_oapp_auth.rs +47 -20
- package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +373 -403
- package/contracts/endpoint-v2/src/tests/endpoint_v2/set_delegate.rs +96 -22
- package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +61 -9
- package/contracts/endpoint-v2/src/tests/endpoint_v2/transfer_ownership.rs +4 -4
- package/contracts/endpoint-v2/src/tests/endpoint_v2/ttl_config.rs +8 -11
- package/contracts/endpoint-v2/src/tests/endpoint_v2/verifiable.rs +81 -30
- package/contracts/endpoint-v2/src/tests/endpoint_v2/verify.rs +209 -76
- package/contracts/endpoint-v2/src/tests/endpoint_v2/zro.rs +0 -1
- package/contracts/endpoint-v2/src/tests/message_lib_manager/default_receive_library.rs +24 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/default_receive_library_timeout.rs +40 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/default_send_library.rs +24 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/get_config.rs +108 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/get_library_index.rs +52 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/get_receive_library.rs +92 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/get_registered_libraries.rs +74 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/get_send_library.rs +83 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/is_registered_library.rs +32 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/is_supported_eid.rs +28 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/is_valid_receive_library.rs +261 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/mod.rs +16 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/receive_library_timeout.rs +62 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/register_library.rs +65 -43
- package/contracts/endpoint-v2/src/tests/message_lib_manager/registered_libraries_count.rs +42 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_receive_lib_for_eid.rs +61 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_registered.rs +3 -5
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_send_lib_for_eid.rs +59 -0
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_supported_eid.rs +15 -1
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_config.rs +155 -51
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +114 -92
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_library.rs +235 -132
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_send_library.rs +93 -87
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library.rs +346 -245
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library_timeout.rs +406 -60
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_send_library.rs +252 -78
- package/contracts/endpoint-v2/src/tests/message_lib_manager/timeout.rs +102 -0
- package/contracts/endpoint-v2/src/tests/messaging_channel/burn.rs +212 -273
- package/contracts/endpoint-v2/src/tests/messaging_channel/clear_payload.rs +203 -0
- package/contracts/endpoint-v2/src/tests/messaging_channel/inbound.rs +94 -0
- package/contracts/endpoint-v2/src/tests/messaging_channel/inbound_nonce.rs +78 -248
- package/contracts/endpoint-v2/src/tests/messaging_channel/inbound_payload_hash.rs +7 -282
- package/contracts/endpoint-v2/src/tests/messaging_channel/lazy_inbound_nonce.rs +6 -274
- package/contracts/endpoint-v2/src/tests/messaging_channel/mod.rs +3 -2
- package/contracts/endpoint-v2/src/tests/messaging_channel/next_guid.rs +86 -178
- package/contracts/endpoint-v2/src/tests/messaging_channel/nilify.rs +328 -212
- package/contracts/endpoint-v2/src/tests/messaging_channel/outbound.rs +68 -0
- package/contracts/endpoint-v2/src/tests/messaging_channel/outbound_nonce.rs +6 -209
- package/contracts/endpoint-v2/src/tests/messaging_channel/skip.rs +207 -159
- package/contracts/endpoint-v2/src/tests/messaging_composer/clear_compose.rs +142 -153
- package/contracts/endpoint-v2/src/tests/messaging_composer/compose_queue.rs +6 -179
- package/contracts/endpoint-v2/src/tests/messaging_composer/lz_compose_alert.rs +163 -221
- package/contracts/endpoint-v2/src/tests/messaging_composer/send_compose.rs +90 -121
- package/contracts/endpoint-v2/src/tests/mock.rs +18 -4
- package/contracts/endpoint-v2/src/tests/util/build_payload.rs +4 -70
- package/contracts/endpoint-v2/src/tests/util/compute_guid.rs +2 -1
- package/contracts/endpoint-v2/src/tests/util/keccak256.rs +17 -106
- package/contracts/layerzero-views/Cargo.toml +35 -0
- package/contracts/layerzero-views/src/errors.rs +10 -0
- package/contracts/layerzero-views/src/layerzero_view.rs +229 -0
- package/contracts/layerzero-views/src/lib.rs +38 -0
- package/contracts/layerzero-views/src/storage.rs +18 -0
- package/contracts/layerzero-views/src/tests/layerzero_view_tests.rs +423 -0
- package/contracts/layerzero-views/src/tests/mod.rs +4 -0
- package/contracts/layerzero-views/src/tests/setup.rs +377 -0
- package/contracts/layerzero-views/src/types.rs +50 -0
- package/contracts/macro-integration-tests/Cargo.toml +30 -0
- package/contracts/macro-integration-tests/src/lib.rs +1 -0
- package/contracts/macro-integration-tests/tests/runtime/ownable/initialization.rs +62 -0
- package/contracts/macro-integration-tests/tests/runtime/ownable/mod.rs +22 -0
- package/contracts/macro-integration-tests/tests/runtime/ownable/only_owner_guard.rs +97 -0
- package/contracts/macro-integration-tests/tests/runtime/ownable/ownership_transfer.rs +101 -0
- package/contracts/macro-integration-tests/tests/runtime/storage/keyed_roundtrip.rs +225 -0
- package/contracts/macro-integration-tests/tests/runtime/storage/mod.rs +4 -0
- package/contracts/macro-integration-tests/tests/runtime/storage/name_override_runtime.rs +52 -0
- package/contracts/macro-integration-tests/tests/runtime/storage/ttl_extension.rs +261 -0
- package/contracts/macro-integration-tests/tests/runtime/storage/unkeyed_roundtrip.rs +137 -0
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/configuration.rs +113 -0
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/extend_instance_ttl.rs +50 -0
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/freeze.rs +139 -0
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/mod.rs +3 -0
- package/contracts/macro-integration-tests/tests/runtime.rs +5 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/attr_not_empty.rs +12 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/attr_not_empty.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.rs +12 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.rs +21 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.rs +13 -0
- package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/error/pass/attr_on_variant_allowed.rs +20 -0
- package/contracts/macro-integration-tests/tests/ui/error/pass/basic_auto_discriminants.rs +15 -0
- package/contracts/macro-integration-tests/tests/ui/error/pass/mixed_discriminants.rs +16 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_owner_missing_env.rs +22 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_owner_missing_env.stderr +16 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/minimal_contract.rs +26 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +22 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_owner_env_param_variants.rs +46 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.rs +13 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.rs +13 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.rs +10 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.rs +12 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.rs +10 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.rs +10 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/storage_attr_rejects_args.rs +12 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/storage_attr_rejects_args.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.rs +13 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.rs +13 -0
- package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.stderr +7 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/default_value_on_variant.rs +14 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_instance_unit_basic.rs +14 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_persistent_named_fields_keyed.rs +16 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_temporary_unit_option.rs +15 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/name_override.rs +14 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/no_auto_ttl_extension.rs +19 -0
- package/contracts/macro-integration-tests/tests/ui/storage/pass/ttl_provider_basic.rs +15 -0
- package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/minimal_contract.rs +44 -0
- package/contracts/macro-integration-tests/tests/ui_error.rs +11 -0
- package/contracts/macro-integration-tests/tests/ui_ownable.rs +11 -0
- package/contracts/macro-integration-tests/tests/ui_storage.rs +11 -0
- package/contracts/macro-integration-tests/tests/ui_ttl_configurable.rs +12 -0
- package/contracts/message-libs/blocked-message-lib/src/lib.rs +17 -17
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/decode_packet_header.rs +64 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/encode_packet.rs +58 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/encode_packet_header.rs +138 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/mod.rs +6 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/payload.rs +30 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/payload_hash.rs +15 -0
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/test_helper.rs +39 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_dvn_option.rs +57 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_lz_receive_option.rs +50 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_native_drop_option.rs +74 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/convert_legacy_options.rs +280 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/extract_type_3_options.rs +126 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/left_pad_to_bytes32.rs +48 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/mod.rs +7 -0
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/split_worker_options.rs +139 -0
- package/contracts/message-libs/message-lib-common/src/worker_options.rs +31 -1
- package/contracts/message-libs/simple-message-lib/src/simple_message_lib.rs +2 -2
- package/contracts/message-libs/treasury/src/errors.rs +0 -1
- package/contracts/message-libs/treasury/src/lib.rs +3 -3
- package/contracts/message-libs/treasury/src/storage.rs +2 -0
- package/contracts/message-libs/treasury/src/treasury.rs +12 -13
- package/contracts/message-libs/uln-302/Cargo.toml +1 -1
- package/contracts/message-libs/uln-302/src/errors.rs +0 -5
- package/contracts/message-libs/uln-302/src/events.rs +5 -6
- package/contracts/message-libs/uln-302/src/receive_uln.rs +24 -54
- package/contracts/message-libs/uln-302/src/send_uln.rs +89 -135
- package/contracts/message-libs/uln-302/src/storage.rs +5 -5
- package/contracts/message-libs/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +5 -7
- package/contracts/message-libs/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +3 -3
- package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +6 -9
- package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +3 -3
- package/contracts/message-libs/uln-302/src/tests/setup.rs +9 -0
- package/contracts/message-libs/uln-302/src/tests/testing_utils.rs +5 -0
- package/contracts/message-libs/uln-302/src/tests/uln302/get_app_receive_uln_config.rs +1 -2
- package/contracts/message-libs/uln-302/src/tests/uln302/get_app_send_uln_config.rs +1 -2
- package/contracts/message-libs/uln-302/src/tests/uln302/set_config.rs +37 -55
- package/contracts/message-libs/uln-302/src/uln302.rs +8 -5
- package/contracts/oapps/counter/src/counter.rs +0 -1
- package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +306 -224
- package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +0 -1
- package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +0 -1
- package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +0 -1
- package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +0 -1
- package/contracts/{oapp-macros → oapps/oapp-macros}/src/oapp_core.rs +1 -0
- package/contracts/oapps/oft/integration-tests/setup.rs +10 -3
- package/contracts/oapps/oft/integration-tests/utils.rs +1 -1
- package/contracts/oapps/oft/src/default_oft_impl.rs +9 -3
- package/contracts/oapps/oft/src/extensions/oft_fee.rs +5 -5
- package/contracts/oapps/oft/src/extensions/pausable.rs +1 -1
- package/contracts/oapps/oft/src/extensions/rate_limiter.rs +18 -18
- package/contracts/oapps/oft/src/oft.rs +9 -9
- package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +1 -1
- package/contracts/oapps/oft/src/tests/extensions/setup.rs +26 -11
- package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +1 -1
- package/contracts/oapps/oft/src/tests/test_send.rs +4 -4
- package/contracts/oapps/oft/src/tests/test_utils.rs +93 -74
- package/contracts/oapps/oft-std/Cargo.toml +6 -0
- package/contracts/oapps/oft-std/integration-tests/extensions/mod.rs +3 -0
- package/contracts/oapps/oft-std/integration-tests/extensions/test_oft_fee.rs +157 -0
- package/contracts/oapps/oft-std/integration-tests/extensions/test_pausable.rs +162 -0
- package/contracts/oapps/oft-std/integration-tests/extensions/test_rate_limiter.rs +186 -0
- package/contracts/oapps/oft-std/integration-tests/mod.rs +3 -0
- package/contracts/oapps/oft-std/integration-tests/setup.rs +245 -0
- package/contracts/oapps/oft-std/integration-tests/utils.rs +427 -0
- package/contracts/oapps/oft-std/src/lib.rs +12 -1
- package/contracts/oapps/oft-std/src/oft.rs +122 -25
- package/contracts/upgrader/Cargo.toml +19 -0
- package/contracts/upgrader/src/lib.rs +96 -0
- package/contracts/upgrader/src/tests/mod.rs +1 -0
- package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
- package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
- package/contracts/upgrader/src/tests/test_upgrader.rs +120 -0
- package/contracts/utils/src/errors.rs +6 -1
- package/contracts/utils/src/lib.rs +2 -1
- package/contracts/utils/src/ownable.rs +49 -61
- package/contracts/utils/src/tests/mod.rs +3 -1
- package/contracts/utils/src/tests/option_ext.rs +21 -0
- package/contracts/utils/src/tests/ownable.rs +10 -69
- package/contracts/utils/src/tests/ttl_configurable.rs +596 -0
- package/contracts/utils/src/tests/upgradeable.rs +288 -0
- package/contracts/utils/src/{ttl.rs → ttl_configurable.rs} +67 -52
- package/contracts/utils/src/upgradeable.rs +54 -0
- package/contracts/workers/dvn/Cargo.toml +1 -1
- package/contracts/workers/dvn/src/auth.rs +21 -32
- package/contracts/workers/dvn/src/dvn.rs +40 -3
- package/contracts/workers/dvn/src/errors.rs +1 -0
- package/contracts/workers/dvn/src/multisig.rs +10 -6
- package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +2 -2
- package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +4 -4
- package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -2
- package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +46 -14
- package/contracts/workers/dvn-fee-lib/src/errors.rs +3 -2
- package/contracts/workers/dvn-fee-lib/src/lib.rs +5 -11
- package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +30 -16
- package/contracts/workers/executor/src/executor.rs +16 -2
- package/contracts/workers/executor-fee-lib/src/errors.rs +9 -7
- package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +154 -119
- package/contracts/workers/executor-helper/Cargo.toml +0 -5
- package/contracts/workers/executor-helper/src/lib.rs +1 -7
- package/contracts/workers/price-feed/Cargo.toml +0 -1
- package/contracts/workers/price-feed/src/errors.rs +3 -2
- package/contracts/workers/price-feed/src/lib.rs +5 -6
- package/contracts/workers/price-feed/src/price_feed.rs +39 -17
- package/contracts/workers/worker/Cargo.toml +4 -0
- package/contracts/workers/worker/src/interfaces/price_feed.rs +3 -3
- package/contracts/workers/worker/src/lib.rs +2 -2
- package/contracts/workers/worker/src/tests/mod.rs +4 -0
- package/contracts/workers/worker/src/tests/setup.rs +147 -0
- package/contracts/workers/worker/src/tests/worker.rs +501 -0
- package/contracts/workers/worker/src/worker.rs +10 -16
- package/package.json +3 -3
- package/sdk/dist/generated/bml.d.ts +40 -30
- package/sdk/dist/generated/bml.js +16 -11
- package/sdk/dist/generated/counter.d.ts +168 -134
- package/sdk/dist/generated/counter.js +26 -21
- package/sdk/dist/generated/dvn.d.ts +1932 -0
- package/sdk/dist/generated/dvn.js +288 -0
- package/sdk/dist/generated/dvn_fee_lib.d.ts +615 -0
- package/sdk/dist/generated/dvn_fee_lib.js +123 -0
- package/sdk/dist/generated/endpoint.d.ts +75 -41
- package/sdk/dist/generated/endpoint.js +22 -17
- package/sdk/dist/generated/executor.d.ts +1809 -0
- package/sdk/dist/generated/executor.js +269 -0
- package/sdk/dist/generated/executor_fee_lib.d.ts +999 -0
- package/sdk/dist/generated/executor_fee_lib.js +208 -0
- package/sdk/dist/generated/executor_helper.d.ts +869 -0
- package/sdk/dist/generated/executor_helper.js +187 -0
- package/sdk/dist/generated/oft_std.d.ts +1544 -0
- package/sdk/dist/generated/oft_std.js +271 -0
- package/sdk/dist/generated/price_feed.d.ts +1002 -0
- package/sdk/dist/generated/price_feed.js +170 -0
- package/sdk/dist/generated/sml.d.ts +75 -41
- package/sdk/dist/generated/sml.js +22 -17
- package/sdk/dist/generated/uln302.d.ts +79 -60
- package/sdk/dist/generated/uln302.js +37 -37
- package/sdk/dist/generated/upgrader.d.ts +70 -0
- package/sdk/dist/generated/upgrader.js +19 -0
- package/sdk/dist/index.d.ts +8 -0
- package/sdk/dist/index.js +11 -0
- package/sdk/package.json +4 -3
- package/sdk/src/index.ts +13 -0
- package/sdk/test/index.test.ts +0 -1
- package/sdk/test/oft.test.ts +12 -23
- package/sdk/test/suites/testUpgradeable.ts +169 -0
- package/sdk/test/upgrader.test.ts +309 -0
- package/tools/ts-bindings-gen/src/main.rs +11 -1
- package/contracts/endpoint-v2/src/tests/messaging_channel/clear.rs +0 -316
- package/contracts/endpoint-v2/src/tests/messaging_channel/internal.rs +0 -388
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1.rs +0 -162
- package/contracts/message-libs/message-lib-common/src/tests/worker_options.rs +0 -319
- package/contracts/utils/src/tests/ttl.rs +0 -421
- /package/contracts/{oapp-macros → oapps/oapp-macros}/Cargo.toml +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/lib.rs +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/oapp_full.rs +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/oapp_options_type3.rs +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/oapp_receiver.rs +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/oapp_sender.rs +0 -0
- /package/contracts/{oapp-macros → oapps/oapp-macros}/src/util.rs +0 -0
|
@@ -1,304 +1,386 @@
|
|
|
1
|
-
extern crate self as oapp;
|
|
2
|
-
|
|
3
|
-
use endpoint_v2::Origin;
|
|
4
|
-
use oapp::{
|
|
5
|
-
oapp_core::OAppCore,
|
|
6
|
-
oapp_options_type3::{EnforcedOptionParam, OAppOptionsType3},
|
|
7
|
-
oapp_receiver::OAppReceiver,
|
|
8
|
-
oapp_sender::OAppSender,
|
|
9
|
-
};
|
|
10
|
-
use oapp_macros::{oapp, oapp_manual_impl};
|
|
11
|
-
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env, Vec};
|
|
12
|
-
|
|
13
1
|
// ============================================================================
|
|
14
2
|
// Test 1: Full OApp with all defaults
|
|
15
3
|
// ============================================================================
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
4
|
+
mod test_full_default {
|
|
5
|
+
extern crate self as oapp;
|
|
6
|
+
|
|
7
|
+
use endpoint_v2::Origin;
|
|
8
|
+
use oapp_macros::oapp;
|
|
9
|
+
use soroban_sdk::{Address, Bytes, BytesN, Env};
|
|
10
|
+
|
|
11
|
+
#[oapp]
|
|
12
|
+
struct TestFullDefault;
|
|
13
|
+
|
|
14
|
+
impl TestFullDefault {
|
|
15
|
+
fn __lz_receive(
|
|
16
|
+
_env: &Env,
|
|
17
|
+
_executor: &Address,
|
|
18
|
+
_origin: &Origin,
|
|
19
|
+
_guid: &BytesN<32>,
|
|
20
|
+
_message: &Bytes,
|
|
21
|
+
_extra_data: &Bytes,
|
|
22
|
+
_value: i128,
|
|
23
|
+
) {
|
|
24
|
+
// Default behavior
|
|
25
|
+
}
|
|
30
26
|
}
|
|
31
27
|
}
|
|
32
28
|
|
|
33
29
|
// ============================================================================
|
|
34
30
|
// Test 2: Full OApp with manual core implementation
|
|
35
31
|
// ============================================================================
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
32
|
+
mod test_full_manual_core {
|
|
33
|
+
extern crate self as oapp;
|
|
34
|
+
|
|
35
|
+
use endpoint_v2::Origin;
|
|
36
|
+
use oapp::oapp_core::OAppCore;
|
|
37
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
38
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
39
|
+
|
|
40
|
+
#[oapp]
|
|
41
|
+
#[oapp_manual_impl(core)]
|
|
42
|
+
struct TestFullManualCore;
|
|
43
|
+
|
|
44
|
+
#[contractimpl(contracttrait)]
|
|
45
|
+
impl OAppCore for TestFullManualCore {
|
|
46
|
+
fn oapp_version(_env: &Env) -> (u64, u64) {
|
|
47
|
+
(2, 0)
|
|
48
|
+
}
|
|
44
49
|
}
|
|
45
|
-
}
|
|
46
50
|
|
|
47
|
-
impl TestFullManualCore {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
impl TestFullManualCore {
|
|
52
|
+
fn __lz_receive(
|
|
53
|
+
_env: &Env,
|
|
54
|
+
_executor: &Address,
|
|
55
|
+
_origin: &Origin,
|
|
56
|
+
_guid: &BytesN<32>,
|
|
57
|
+
_message: &Bytes,
|
|
58
|
+
_extra_data: &Bytes,
|
|
59
|
+
_value: i128,
|
|
60
|
+
) {
|
|
61
|
+
// Custom logic
|
|
62
|
+
}
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
65
|
|
|
61
66
|
// ============================================================================
|
|
62
67
|
// Test 3: Full OApp with manual sender implementation
|
|
63
68
|
// ============================================================================
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
struct TestFullManualSender;
|
|
69
|
+
mod test_full_manual_sender {
|
|
70
|
+
extern crate self as oapp;
|
|
67
71
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
72
|
+
use endpoint_v2::Origin;
|
|
73
|
+
use oapp::oapp_sender::OAppSender;
|
|
74
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
75
|
+
use soroban_sdk::{Address, Bytes, BytesN, Env};
|
|
76
|
+
|
|
77
|
+
#[oapp]
|
|
78
|
+
#[oapp_manual_impl(sender)]
|
|
79
|
+
struct TestFullManualSender;
|
|
71
80
|
|
|
72
|
-
impl TestFullManualSender {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
impl OAppSender for TestFullManualSender {
|
|
82
|
+
// Custom sender implementation
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
impl TestFullManualSender {
|
|
86
|
+
fn __lz_receive(
|
|
87
|
+
_env: &Env,
|
|
88
|
+
_executor: &Address,
|
|
89
|
+
_origin: &Origin,
|
|
90
|
+
_guid: &BytesN<32>,
|
|
91
|
+
_message: &Bytes,
|
|
92
|
+
_extra_data: &Bytes,
|
|
93
|
+
_value: i128,
|
|
94
|
+
) {
|
|
95
|
+
// Implementation
|
|
96
|
+
}
|
|
83
97
|
}
|
|
84
98
|
}
|
|
85
99
|
|
|
86
100
|
// ============================================================================
|
|
87
101
|
// Test 4: Full OApp with manual receiver implementation
|
|
88
102
|
// ============================================================================
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
103
|
+
mod test_full_manual_receiver {
|
|
104
|
+
extern crate self as oapp;
|
|
105
|
+
|
|
106
|
+
use endpoint_v2::Origin;
|
|
107
|
+
use oapp::oapp_receiver::OAppReceiver;
|
|
108
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
109
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
110
|
+
|
|
111
|
+
#[oapp]
|
|
112
|
+
#[oapp_manual_impl(receiver)]
|
|
113
|
+
struct TestFullManualReceiver;
|
|
114
|
+
|
|
115
|
+
#[contractimpl(contracttrait)]
|
|
116
|
+
impl OAppReceiver for TestFullManualReceiver {
|
|
117
|
+
fn is_compose_msg_sender(_env: &Env, _origin: &Origin, _message: &Bytes, _sender: &Address) -> bool {
|
|
118
|
+
true
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
fn allow_initialize_path(_env: &Env, _origin: &Origin) -> bool {
|
|
122
|
+
true
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
fn next_nonce(_env: &Env, _src_eid: u32, _sender: &BytesN<32>) -> u64 {
|
|
126
|
+
1 // Ordered delivery
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
fn lz_receive(
|
|
130
|
+
_env: &Env,
|
|
131
|
+
_executor: &Address,
|
|
132
|
+
_origin: &Origin,
|
|
133
|
+
_guid: &BytesN<32>,
|
|
134
|
+
_message: &Bytes,
|
|
135
|
+
_extra_data: &Bytes,
|
|
136
|
+
_value: i128,
|
|
137
|
+
) {
|
|
138
|
+
// Custom implementation - verify_and_clear_payload must be called manually
|
|
139
|
+
}
|
|
117
140
|
}
|
|
118
141
|
}
|
|
119
142
|
|
|
120
143
|
// ============================================================================
|
|
121
144
|
// Test 5: Full OApp with manual options_type3 implementation
|
|
122
145
|
// ============================================================================
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
146
|
+
mod test_full_manual_options {
|
|
147
|
+
extern crate self as oapp;
|
|
148
|
+
|
|
149
|
+
use endpoint_v2::Origin;
|
|
150
|
+
use oapp::oapp_options_type3::{EnforcedOptionParam, OAppOptionsType3};
|
|
151
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
152
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env, Vec};
|
|
153
|
+
|
|
154
|
+
#[oapp]
|
|
155
|
+
#[oapp_manual_impl(options_type3)]
|
|
156
|
+
struct TestFullManualOptions;
|
|
157
|
+
|
|
158
|
+
impl TestFullManualOptions {
|
|
159
|
+
fn __lz_receive(
|
|
160
|
+
_env: &Env,
|
|
161
|
+
_executor: &Address,
|
|
162
|
+
_origin: &Origin,
|
|
163
|
+
_guid: &BytesN<32>,
|
|
164
|
+
_message: &Bytes,
|
|
165
|
+
_extra_data: &Bytes,
|
|
166
|
+
_value: i128,
|
|
167
|
+
) {
|
|
168
|
+
// Implementation
|
|
169
|
+
}
|
|
138
170
|
}
|
|
139
|
-
}
|
|
140
171
|
|
|
141
|
-
#[contractimpl(contracttrait)]
|
|
142
|
-
impl OAppOptionsType3 for TestFullManualOptions {
|
|
143
|
-
|
|
172
|
+
#[contractimpl(contracttrait)]
|
|
173
|
+
impl OAppOptionsType3 for TestFullManualOptions {
|
|
174
|
+
// Custom options implementation
|
|
175
|
+
}
|
|
144
176
|
}
|
|
145
177
|
|
|
146
178
|
// ============================================================================
|
|
147
179
|
// Test 6: Full OApp with manual core + sender
|
|
148
180
|
// ============================================================================
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
181
|
+
mod test_full_manual_core_sender {
|
|
182
|
+
extern crate self as oapp;
|
|
183
|
+
|
|
184
|
+
use endpoint_v2::Origin;
|
|
185
|
+
use oapp::{oapp_core::OAppCore, oapp_sender::OAppSender};
|
|
186
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
187
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
188
|
+
|
|
189
|
+
#[oapp]
|
|
190
|
+
#[oapp_manual_impl(core, sender)]
|
|
191
|
+
struct TestFullManualCoreSender;
|
|
192
|
+
|
|
193
|
+
#[contractimpl(contracttrait)]
|
|
194
|
+
impl OAppCore for TestFullManualCoreSender {
|
|
195
|
+
fn oapp_version(_env: &Env) -> (u64, u64) {
|
|
196
|
+
(3, 0)
|
|
197
|
+
}
|
|
157
198
|
}
|
|
158
|
-
}
|
|
159
199
|
|
|
160
|
-
impl OAppSender for TestFullManualCoreSender {
|
|
161
|
-
|
|
162
|
-
}
|
|
200
|
+
impl OAppSender for TestFullManualCoreSender {
|
|
201
|
+
// Custom sender implementation
|
|
202
|
+
}
|
|
163
203
|
|
|
164
|
-
impl TestFullManualCoreSender {
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
204
|
+
impl TestFullManualCoreSender {
|
|
205
|
+
fn __lz_receive(
|
|
206
|
+
_env: &Env,
|
|
207
|
+
_executor: &Address,
|
|
208
|
+
_origin: &Origin,
|
|
209
|
+
_guid: &BytesN<32>,
|
|
210
|
+
_message: &Bytes,
|
|
211
|
+
_extra_data: &Bytes,
|
|
212
|
+
_value: i128,
|
|
213
|
+
) {
|
|
214
|
+
// Implementation
|
|
215
|
+
}
|
|
175
216
|
}
|
|
176
217
|
}
|
|
177
218
|
|
|
178
219
|
// ============================================================================
|
|
179
220
|
// Test 7: Full OApp with manual core + receiver
|
|
180
221
|
// ============================================================================
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
222
|
+
mod test_full_manual_core_receiver {
|
|
223
|
+
extern crate self as oapp;
|
|
224
|
+
|
|
225
|
+
use endpoint_v2::Origin;
|
|
226
|
+
use oapp::{oapp_core::OAppCore, oapp_receiver::OAppReceiver};
|
|
227
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
228
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
229
|
+
|
|
230
|
+
#[oapp]
|
|
231
|
+
#[oapp_manual_impl(core, receiver)]
|
|
232
|
+
struct TestFullManualCoreReceiver;
|
|
233
|
+
|
|
234
|
+
#[contractimpl(contracttrait)]
|
|
235
|
+
impl OAppCore for TestFullManualCoreReceiver {
|
|
236
|
+
fn oapp_version(_env: &Env) -> (u64, u64) {
|
|
237
|
+
(4, 0)
|
|
238
|
+
}
|
|
189
239
|
}
|
|
190
|
-
}
|
|
191
240
|
|
|
192
|
-
#[contractimpl(contracttrait)]
|
|
193
|
-
impl OAppReceiver for TestFullManualCoreReceiver {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
241
|
+
#[contractimpl(contracttrait)]
|
|
242
|
+
impl OAppReceiver for TestFullManualCoreReceiver {
|
|
243
|
+
fn lz_receive(
|
|
244
|
+
_env: &Env,
|
|
245
|
+
_executor: &Address,
|
|
246
|
+
_origin: &Origin,
|
|
247
|
+
_guid: &BytesN<32>,
|
|
248
|
+
_message: &Bytes,
|
|
249
|
+
_extra_data: &Bytes,
|
|
250
|
+
_value: i128,
|
|
251
|
+
) {
|
|
252
|
+
// Custom receiver implementation
|
|
253
|
+
}
|
|
204
254
|
}
|
|
205
255
|
}
|
|
206
256
|
|
|
207
257
|
// ============================================================================
|
|
208
258
|
// Test 8: Full OApp with manual sender + receiver
|
|
209
259
|
// ============================================================================
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
struct TestFullManualSenderReceiver;
|
|
260
|
+
mod test_full_manual_sender_receiver {
|
|
261
|
+
extern crate self as oapp;
|
|
213
262
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
}
|
|
263
|
+
use endpoint_v2::Origin;
|
|
264
|
+
use oapp::{oapp_receiver::OAppReceiver, oapp_sender::OAppSender};
|
|
265
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
266
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
217
267
|
|
|
218
|
-
#[
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
268
|
+
#[oapp]
|
|
269
|
+
#[oapp_manual_impl(sender, receiver)]
|
|
270
|
+
struct TestFullManualSenderReceiver;
|
|
271
|
+
|
|
272
|
+
impl OAppSender for TestFullManualSenderReceiver {
|
|
273
|
+
// Custom sender implementation
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
#[contractimpl(contracttrait)]
|
|
277
|
+
impl OAppReceiver for TestFullManualSenderReceiver {
|
|
278
|
+
fn lz_receive(
|
|
279
|
+
_env: &Env,
|
|
280
|
+
_executor: &Address,
|
|
281
|
+
_origin: &Origin,
|
|
282
|
+
_guid: &BytesN<32>,
|
|
283
|
+
_message: &Bytes,
|
|
284
|
+
_extra_data: &Bytes,
|
|
285
|
+
_value: i128,
|
|
286
|
+
) {
|
|
287
|
+
// Custom receiver implementation
|
|
288
|
+
}
|
|
230
289
|
}
|
|
231
290
|
}
|
|
232
291
|
|
|
233
292
|
// ============================================================================
|
|
234
293
|
// Test 9: Full OApp with manual core + sender + receiver (all except options)
|
|
235
294
|
// ============================================================================
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
295
|
+
mod test_full_manual_all_except_options {
|
|
296
|
+
extern crate self as oapp;
|
|
297
|
+
|
|
298
|
+
use endpoint_v2::Origin;
|
|
299
|
+
use oapp::{oapp_core::OAppCore, oapp_receiver::OAppReceiver, oapp_sender::OAppSender};
|
|
300
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
301
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env};
|
|
302
|
+
|
|
303
|
+
#[oapp]
|
|
304
|
+
#[oapp_manual_impl(core, sender, receiver)]
|
|
305
|
+
struct TestFullManualAllExceptOptions;
|
|
306
|
+
|
|
307
|
+
#[contractimpl(contracttrait)]
|
|
308
|
+
impl OAppCore for TestFullManualAllExceptOptions {
|
|
309
|
+
fn oapp_version(_env: &Env) -> (u64, u64) {
|
|
310
|
+
(5, 0)
|
|
311
|
+
}
|
|
244
312
|
}
|
|
245
|
-
}
|
|
246
313
|
|
|
247
|
-
impl OAppSender for TestFullManualAllExceptOptions {
|
|
248
|
-
|
|
249
|
-
}
|
|
314
|
+
impl OAppSender for TestFullManualAllExceptOptions {
|
|
315
|
+
// Custom sender implementation
|
|
316
|
+
}
|
|
250
317
|
|
|
251
|
-
#[contractimpl(contracttrait)]
|
|
252
|
-
impl OAppReceiver for TestFullManualAllExceptOptions {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
318
|
+
#[contractimpl(contracttrait)]
|
|
319
|
+
impl OAppReceiver for TestFullManualAllExceptOptions {
|
|
320
|
+
fn lz_receive(
|
|
321
|
+
_env: &Env,
|
|
322
|
+
_executor: &Address,
|
|
323
|
+
_origin: &Origin,
|
|
324
|
+
_guid: &BytesN<32>,
|
|
325
|
+
_message: &Bytes,
|
|
326
|
+
_extra_data: &Bytes,
|
|
327
|
+
_value: i128,
|
|
328
|
+
) {
|
|
329
|
+
// Custom receiver implementation
|
|
330
|
+
}
|
|
263
331
|
}
|
|
264
332
|
}
|
|
265
333
|
|
|
266
334
|
// ============================================================================
|
|
267
335
|
// Test 10: Full OApp with all manual implementations
|
|
268
336
|
// ============================================================================
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
337
|
+
mod test_full_manual_all {
|
|
338
|
+
extern crate self as oapp;
|
|
339
|
+
|
|
340
|
+
use endpoint_v2::Origin;
|
|
341
|
+
use oapp::{
|
|
342
|
+
oapp_core::OAppCore,
|
|
343
|
+
oapp_options_type3::{EnforcedOptionParam, OAppOptionsType3},
|
|
344
|
+
oapp_receiver::OAppReceiver,
|
|
345
|
+
oapp_sender::OAppSender,
|
|
346
|
+
};
|
|
347
|
+
use oapp_macros::{oapp, oapp_manual_impl};
|
|
348
|
+
use soroban_sdk::{contractimpl, Address, Bytes, BytesN, Env, Vec};
|
|
349
|
+
|
|
350
|
+
#[oapp]
|
|
351
|
+
#[oapp_manual_impl(core, sender, receiver, options_type3)]
|
|
352
|
+
struct TestFullManualAll;
|
|
353
|
+
|
|
354
|
+
#[contractimpl(contracttrait)]
|
|
355
|
+
impl OAppCore for TestFullManualAll {
|
|
356
|
+
fn oapp_version(_env: &Env) -> (u64, u64) {
|
|
357
|
+
(6, 0)
|
|
358
|
+
}
|
|
277
359
|
}
|
|
278
|
-
}
|
|
279
360
|
|
|
280
|
-
impl OAppSender for TestFullManualAll {
|
|
281
|
-
|
|
282
|
-
}
|
|
361
|
+
impl OAppSender for TestFullManualAll {
|
|
362
|
+
// Custom sender implementation
|
|
363
|
+
}
|
|
283
364
|
|
|
284
|
-
#[contractimpl(contracttrait)]
|
|
285
|
-
impl OAppReceiver for TestFullManualAll {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
365
|
+
#[contractimpl(contracttrait)]
|
|
366
|
+
impl OAppReceiver for TestFullManualAll {
|
|
367
|
+
fn lz_receive(
|
|
368
|
+
_env: &Env,
|
|
369
|
+
_executor: &Address,
|
|
370
|
+
_origin: &Origin,
|
|
371
|
+
_guid: &BytesN<32>,
|
|
372
|
+
_message: &Bytes,
|
|
373
|
+
_extra_data: &Bytes,
|
|
374
|
+
_value: i128,
|
|
375
|
+
) {
|
|
376
|
+
// Custom receiver implementation
|
|
377
|
+
}
|
|
296
378
|
}
|
|
297
|
-
}
|
|
298
379
|
|
|
299
|
-
#[contractimpl(contracttrait)]
|
|
300
|
-
impl OAppOptionsType3 for TestFullManualAll {
|
|
301
|
-
|
|
380
|
+
#[contractimpl(contracttrait)]
|
|
381
|
+
impl OAppOptionsType3 for TestFullManualAll {
|
|
382
|
+
// Custom options implementation
|
|
383
|
+
}
|
|
302
384
|
}
|
|
303
385
|
|
|
304
386
|
// ============================================================================
|
|
@@ -5,7 +5,6 @@ use crate::tests::test_oapp_core::DummyEndpoint;
|
|
|
5
5
|
use endpoint_v2::Origin;
|
|
6
6
|
use soroban_sdk::{assert_with_error, contractimpl, testutils::Address as _, Address, Bytes, BytesN, Env};
|
|
7
7
|
use utils::option_ext::OptionExt;
|
|
8
|
-
use utils::ownable::Ownable;
|
|
9
8
|
|
|
10
9
|
#[oapp_macros::oapp]
|
|
11
10
|
pub struct DummyOAppReceiver;
|