@layerzerolabs/protocol-stellar-v2 0.2.19 → 0.2.21

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.
Files changed (249) hide show
  1. package/.turbo/turbo-build.log +795 -791
  2. package/.turbo/turbo-lint.log +325 -155
  3. package/.turbo/turbo-test.log +1398 -1277
  4. package/Cargo.lock +122 -111
  5. package/Cargo.toml +32 -16
  6. package/contracts/common-macros/Cargo.toml +7 -7
  7. package/contracts/common-macros/src/auth.rs +18 -37
  8. package/contracts/common-macros/src/contract_ttl.rs +18 -7
  9. package/contracts/common-macros/src/lib.rs +31 -14
  10. package/contracts/common-macros/src/lz_contract.rs +38 -7
  11. package/contracts/common-macros/src/storage.rs +251 -292
  12. package/contracts/common-macros/src/tests/contract_ttl.rs +1 -1
  13. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +6 -12
  14. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +12 -17
  15. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap +2 -1
  16. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +2 -7
  17. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +20 -14
  18. package/contracts/common-macros/src/tests/upgradeable.rs +26 -4
  19. package/contracts/common-macros/src/ttl_configurable.rs +2 -10
  20. package/contracts/common-macros/src/ttl_extendable.rs +2 -10
  21. package/contracts/common-macros/src/upgradeable.rs +61 -26
  22. package/contracts/common-macros/src/utils.rs +0 -9
  23. package/contracts/endpoint-v2/src/lib.rs +3 -2
  24. package/contracts/endpoint-v2/src/tests/endpoint_v2/clear.rs +2 -2
  25. package/contracts/endpoint-v2/src/tests/endpoint_v2/lz_receive_alert.rs +3 -3
  26. package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +4 -4
  27. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_delegate.rs +17 -5
  28. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +4 -4
  29. package/contracts/endpoint-v2/src/tests/endpoint_v2/verify.rs +2 -2
  30. package/contracts/endpoint-v2/src/tests/message_lib_manager/register_library.rs +2 -2
  31. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +6 -6
  32. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_library.rs +67 -37
  33. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_send_library.rs +5 -5
  34. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library.rs +44 -54
  35. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library_timeout.rs +7 -7
  36. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_send_library.rs +8 -8
  37. package/contracts/endpoint-v2/src/tests/messaging_channel/burn.rs +3 -3
  38. package/contracts/endpoint-v2/src/tests/messaging_channel/nilify.rs +4 -4
  39. package/contracts/endpoint-v2/src/tests/messaging_channel/skip.rs +3 -3
  40. package/contracts/endpoint-v2/src/tests/messaging_composer/clear_compose.rs +2 -2
  41. package/contracts/endpoint-v2/src/tests/messaging_composer/lz_compose_alert.rs +3 -3
  42. package/contracts/endpoint-v2/src/tests/messaging_composer/send_compose.rs +2 -2
  43. package/contracts/layerzero-views/Cargo.toml +0 -1
  44. package/contracts/layerzero-views/src/layerzero_view.rs +1 -13
  45. package/contracts/macro-integration-tests/Cargo.toml +5 -15
  46. package/contracts/macro-integration-tests/tests/runtime/oapp/mod.rs +48 -0
  47. package/contracts/macro-integration-tests/tests/runtime/oapp/oapp_core.rs +170 -0
  48. package/contracts/macro-integration-tests/tests/runtime/oapp/options_type3.rs +154 -0
  49. package/contracts/macro-integration-tests/tests/runtime/oapp/receiver.rs +338 -0
  50. package/contracts/macro-integration-tests/tests/runtime/oapp/sender.rs +435 -0
  51. package/contracts/macro-integration-tests/tests/runtime.rs +1 -0
  52. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.rs +8 -0
  53. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.stderr +5 -0
  54. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.rs +8 -0
  55. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.stderr +71 -0
  56. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.rs +10 -0
  57. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.stderr +5 -0
  58. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.rs +8 -0
  59. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.stderr +5 -0
  60. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.rs +8 -0
  61. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.stderr +5 -0
  62. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_all.rs +38 -0
  63. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_single_trait.rs +96 -0
  64. package/contracts/macro-integration-tests/tests/ui/oapp/pass/minimal_contract.rs +64 -0
  65. package/contracts/macro-integration-tests/tests/ui/oapp/pass/struct_with_fields.rs +46 -0
  66. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.stderr +8 -0
  67. package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +1 -1
  68. package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_auth_env_param_variants.rs +1 -1
  69. package/contracts/macro-integration-tests/tests/ui_oapp.rs +11 -0
  70. package/contracts/message-libs/message-lib-common/Cargo.toml +0 -1
  71. package/contracts/message-libs/message-lib-common/src/errors.rs +1 -1
  72. package/contracts/message-libs/treasury/Cargo.toml +0 -2
  73. package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +2 -2
  74. package/contracts/message-libs/uln-302/src/events.rs +4 -0
  75. package/contracts/message-libs/uln-302/src/send_uln.rs +22 -6
  76. package/contracts/message-libs/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +2 -2
  77. package/contracts/message-libs/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +2 -2
  78. package/contracts/message-libs/uln-302/src/tests/receive_uln302/verify.rs +2 -2
  79. package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_executor_config.rs +2 -2
  80. package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +2 -2
  81. package/contracts/message-libs/uln-302/src/tests/send_uln302/send.rs +21 -67
  82. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +2 -2
  83. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +2 -2
  84. package/contracts/oapps/counter/Cargo.toml +5 -6
  85. package/contracts/oapps/counter/integration_tests/setup_uln.rs +1 -1
  86. package/contracts/oapps/counter/integration_tests/utils.rs +19 -12
  87. package/contracts/oapps/oapp/src/errors.rs +1 -1
  88. package/contracts/oapps/oapp/src/interfaces/mod.rs +3 -0
  89. package/contracts/oapps/oapp/src/interfaces/oapp_msg_inspector.rs +47 -0
  90. package/contracts/oapps/oapp/src/lib.rs +1 -0
  91. package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +4 -4
  92. package/contracts/oapps/oapp/src/oapp_core.rs +5 -5
  93. package/contracts/oapps/oapp/src/oapp_options_type3.rs +12 -4
  94. package/contracts/oapps/oapp/src/oapp_receiver.rs +14 -9
  95. package/contracts/oapps/oapp/src/tests/mod.rs +4 -4
  96. package/contracts/oapps/oapp/src/tests/oapp_core.rs +223 -0
  97. package/contracts/oapps/oapp/src/tests/oapp_options_type3.rs +240 -0
  98. package/contracts/oapps/oapp/src/tests/oapp_receiver.rs +381 -0
  99. package/contracts/oapps/oapp/src/tests/oapp_sender.rs +569 -0
  100. package/contracts/oapps/oapp-macros/Cargo.toml +8 -4
  101. package/contracts/oapps/oapp-macros/src/generators.rs +9 -34
  102. package/contracts/oapps/oapp-macros/src/lib.rs +3 -0
  103. package/contracts/oapps/oapp-macros/src/tests/mod.rs +2 -0
  104. package/contracts/oapps/oapp-macros/src/tests/oapp.rs +88 -0
  105. package/contracts/oapps/oapp-macros/src/tests/parse_custom_impls.rs +86 -0
  106. package/contracts/oapps/oapp-macros/src/tests/snapshots/oapp_macros__tests__oapp__snapshot_generate_oapp.snap +103 -0
  107. package/contracts/oapps/oft/integration-tests/utils.rs +28 -8
  108. package/contracts/oapps/oft/src/extensions/oft_fee.rs +153 -75
  109. package/contracts/oapps/oft/src/extensions/pausable.rs +61 -12
  110. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +198 -134
  111. package/contracts/oapps/oft/src/oft.rs +45 -50
  112. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +1 -1
  113. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +4 -26
  114. package/contracts/oapps/oft-core/Cargo.toml +1 -4
  115. package/contracts/oapps/oft-core/integration-tests/setup.rs +3 -3
  116. package/contracts/oapps/oft-core/integration-tests/utils.rs +21 -3
  117. package/contracts/oapps/oft-core/src/errors.rs +3 -2
  118. package/contracts/oapps/oft-core/src/events.rs +6 -0
  119. package/contracts/oapps/oft-core/src/lib.rs +1 -1
  120. package/contracts/oapps/oft-core/src/oft_core.rs +341 -246
  121. package/contracts/oapps/oft-core/src/storage.rs +7 -3
  122. package/contracts/oapps/oft-core/src/tests/mod.rs +1 -0
  123. package/contracts/oapps/oft-core/src/tests/test_decimals.rs +37 -2
  124. package/contracts/oapps/oft-core/src/tests/test_lz_receive.rs +2 -2
  125. package/contracts/oapps/oft-core/src/tests/test_msg_inspector.rs +323 -0
  126. package/contracts/oapps/oft-core/src/tests/test_send.rs +2 -2
  127. package/contracts/oapps/oft-core/src/tests/test_utils.rs +61 -16
  128. package/contracts/upgrader/src/lib.rs +30 -57
  129. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
  130. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
  131. package/contracts/upgrader/src/tests/test_upgrader.rs +44 -35
  132. package/contracts/utils/Cargo.toml +0 -1
  133. package/contracts/utils/src/buffer_reader.rs +1 -0
  134. package/contracts/utils/src/errors.rs +4 -2
  135. package/contracts/utils/src/multisig.rs +17 -8
  136. package/contracts/utils/src/ownable.rs +6 -6
  137. package/contracts/utils/src/testing_utils.rs +124 -54
  138. package/contracts/utils/src/tests/multisig.rs +12 -12
  139. package/contracts/utils/src/tests/ownable.rs +6 -6
  140. package/contracts/utils/src/tests/testing_utils.rs +50 -167
  141. package/contracts/utils/src/tests/ttl_configurable.rs +5 -5
  142. package/contracts/utils/src/tests/upgradeable.rs +372 -175
  143. package/contracts/utils/src/ttl_configurable.rs +13 -7
  144. package/contracts/utils/src/upgradeable.rs +48 -23
  145. package/contracts/workers/dvn/Cargo.toml +6 -6
  146. package/contracts/workers/dvn/src/auth.rs +12 -42
  147. package/contracts/workers/dvn/src/dvn.rs +15 -40
  148. package/contracts/workers/dvn/src/errors.rs +0 -1
  149. package/contracts/workers/dvn/src/interfaces/dvn.rs +35 -0
  150. package/contracts/workers/dvn/src/lib.rs +4 -3
  151. package/contracts/workers/dvn/src/tests/auth.rs +1 -1
  152. package/contracts/workers/dvn/src/tests/dvn.rs +19 -15
  153. package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +2 -4
  154. package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +1 -3
  155. package/contracts/workers/dvn/src/tests/setup.rs +5 -9
  156. package/contracts/workers/dvn-fee-lib/Cargo.toml +2 -2
  157. package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +38 -22
  158. package/contracts/workers/dvn-fee-lib/src/lib.rs +12 -2
  159. package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +17 -16
  160. package/contracts/workers/executor/Cargo.toml +4 -0
  161. package/contracts/workers/executor/src/executor.rs +15 -36
  162. package/contracts/workers/executor/src/lib.rs +2 -2
  163. package/contracts/workers/executor/src/tests/auth.rs +394 -0
  164. package/contracts/workers/executor/src/tests/executor.rs +410 -0
  165. package/contracts/workers/executor/src/tests/mod.rs +3 -0
  166. package/contracts/workers/executor/src/tests/setup.rs +250 -0
  167. package/contracts/workers/executor-fee-lib/Cargo.toml +7 -1
  168. package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +62 -15
  169. package/contracts/workers/executor-fee-lib/src/executor_option.rs +28 -1
  170. package/contracts/workers/executor-fee-lib/src/lib.rs +11 -2
  171. package/contracts/workers/executor-fee-lib/src/tests/executor_fee_lib.rs +701 -0
  172. package/contracts/workers/executor-fee-lib/src/tests/executor_option.rs +370 -0
  173. package/contracts/workers/executor-fee-lib/src/tests/mod.rs +4 -0
  174. package/contracts/workers/executor-fee-lib/src/tests/setup.rs +60 -0
  175. package/contracts/workers/executor-helper/Cargo.toml +0 -1
  176. package/contracts/workers/executor-helper/src/lib.rs +3 -0
  177. package/contracts/workers/executor-helper/src/tests/executor_helper.rs +184 -0
  178. package/contracts/workers/executor-helper/src/tests/mod.rs +2 -0
  179. package/contracts/workers/executor-helper/src/tests/setup.rs +366 -0
  180. package/contracts/workers/fee-lib-interfaces/Cargo.toml +14 -0
  181. package/contracts/workers/{worker/src/interfaces/mod.rs → fee-lib-interfaces/src/lib.rs} +4 -3
  182. package/contracts/workers/price-feed/Cargo.toml +7 -1
  183. package/contracts/workers/price-feed/src/events.rs +1 -1
  184. package/contracts/workers/price-feed/src/lib.rs +12 -4
  185. package/contracts/workers/price-feed/src/price_feed.rs +5 -21
  186. package/contracts/workers/price-feed/src/storage.rs +1 -1
  187. package/contracts/workers/price-feed/src/tests/mod.rs +2 -0
  188. package/contracts/workers/price-feed/src/tests/price_feed.rs +869 -0
  189. package/contracts/workers/price-feed/src/tests/setup.rs +70 -0
  190. package/contracts/workers/price-feed/src/types.rs +1 -1
  191. package/contracts/workers/worker/src/errors.rs +1 -4
  192. package/contracts/workers/worker/src/lib.rs +0 -2
  193. package/contracts/workers/worker/src/storage.rs +32 -29
  194. package/contracts/workers/worker/src/tests/setup.rs +2 -8
  195. package/contracts/workers/worker/src/tests/worker.rs +96 -74
  196. package/contracts/workers/worker/src/worker.rs +75 -75
  197. package/docs/error-spec.md +55 -0
  198. package/docs/layerzero-v2-on-stellar.md +447 -0
  199. package/docs/oapp-guide.md +212 -0
  200. package/docs/oft-guide.md +314 -0
  201. package/package.json +3 -3
  202. package/sdk/.turbo/turbo-test.log +268 -263
  203. package/sdk/dist/generated/bml.d.ts +12 -4
  204. package/sdk/dist/generated/bml.js +9 -7
  205. package/sdk/dist/generated/counter.d.ts +306 -298
  206. package/sdk/dist/generated/counter.js +48 -46
  207. package/sdk/dist/generated/dvn.d.ts +450 -411
  208. package/sdk/dist/generated/dvn.js +66 -64
  209. package/sdk/dist/generated/dvn_fee_lib.d.ts +294 -338
  210. package/sdk/dist/generated/dvn_fee_lib.js +33 -64
  211. package/sdk/dist/generated/endpoint.d.ts +108 -100
  212. package/sdk/dist/generated/endpoint.js +21 -19
  213. package/sdk/dist/generated/executor.d.ts +414 -370
  214. package/sdk/dist/generated/executor.js +58 -55
  215. package/sdk/dist/generated/executor_fee_lib.d.ts +333 -377
  216. package/sdk/dist/generated/executor_fee_lib.js +34 -65
  217. package/sdk/dist/generated/executor_helper.d.ts +26 -190
  218. package/sdk/dist/generated/executor_helper.js +23 -28
  219. package/sdk/dist/generated/layerzero_view.d.ts +1271 -0
  220. package/sdk/dist/generated/layerzero_view.js +294 -0
  221. package/sdk/dist/generated/oft.d.ts +408 -385
  222. package/sdk/dist/generated/oft.js +89 -92
  223. package/sdk/dist/generated/price_feed.d.ts +385 -429
  224. package/sdk/dist/generated/price_feed.js +50 -81
  225. package/sdk/dist/generated/sml.d.ts +108 -100
  226. package/sdk/dist/generated/sml.js +21 -19
  227. package/sdk/dist/generated/treasury.d.ts +108 -100
  228. package/sdk/dist/generated/treasury.js +21 -19
  229. package/sdk/dist/generated/uln302.d.ts +108 -100
  230. package/sdk/dist/generated/uln302.js +23 -21
  231. package/sdk/dist/generated/upgrader.d.ts +189 -18
  232. package/sdk/dist/generated/upgrader.js +84 -4
  233. package/sdk/dist/index.d.ts +1 -0
  234. package/sdk/dist/index.js +2 -0
  235. package/sdk/package.json +1 -1
  236. package/sdk/src/index.ts +3 -0
  237. package/sdk/test/oft-sml.test.ts +4 -4
  238. package/sdk/test/suites/localnet.ts +84 -20
  239. package/sdk/test/upgrader.test.ts +2 -3
  240. package/tools/ts-bindings-gen/src/main.rs +2 -1
  241. package/contracts/ERROR_SPEC.md +0 -44
  242. package/contracts/endpoint-v2/ARCHITECTURE.md +0 -233
  243. package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +0 -175
  244. package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +0 -212
  245. package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +0 -153
  246. package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +0 -294
  247. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/dvn_fee_lib.rs +0 -0
  248. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/executor_fee_lib.rs +0 -0
  249. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/price_feed.rs +0 -0
@@ -9,6 +9,8 @@ use soroban_sdk::{
9
9
  vec, Address, BytesN, Env, IntoVal, Symbol, TryIntoVal, Val, Vec,
10
10
  };
11
11
 
12
+ use crate::testing_utils::decode_event_topics_data;
13
+
12
14
  // Test contract implementing Multisig + Auth (self-owning)
13
15
  #[contract]
14
16
  pub struct TestContract;
@@ -60,14 +62,13 @@ fn assert_auth(env: &Env, contract: &Address, func: &str, expected_args: Vec<Val
60
62
 
61
63
  fn assert_signer_set_event(env: &Env, contract: &Address, signer: &BytesN<20>, active: bool) {
62
64
  use soroban_sdk::Map;
63
- let events = env.events().all();
65
+ let events = env.events().all().filter_by_contract(contract);
64
66
  // Find the signer_set event for this contract (snake_case event name)
65
- let found = events.iter().any(|event| {
66
- if &event.0 != contract {
67
+ let found = events.events().iter().any(|event| {
68
+ let Some((topics, data)) = decode_event_topics_data(env, event) else {
67
69
  return false;
68
- }
70
+ };
69
71
  // Check topics: ["signer_set", signer]
70
- let topics = &event.1;
71
72
  if topics.len() != 2 {
72
73
  return false;
73
74
  }
@@ -77,7 +78,7 @@ fn assert_signer_set_event(env: &Env, contract: &Address, signer: &BytesN<20>, a
77
78
  return false;
78
79
  }
79
80
  // Check data is a map with "active" field
80
- let data_map: Map<Symbol, bool> = event.2.try_into_val(env).unwrap();
81
+ let data_map: Map<Symbol, bool> = data.try_into_val(env).unwrap();
81
82
  data_map.get(Symbol::new(env, "active")) == Some(active)
82
83
  });
83
84
  assert!(found, "signer_set event not found");
@@ -85,14 +86,13 @@ fn assert_signer_set_event(env: &Env, contract: &Address, signer: &BytesN<20>, a
85
86
 
86
87
  fn assert_threshold_set_event(env: &Env, contract: &Address, threshold: u32) {
87
88
  use soroban_sdk::Map;
88
- let events = env.events().all();
89
+ let events = env.events().all().filter_by_contract(contract);
89
90
  // Find the threshold_set event for this contract (snake_case event name)
90
- let found = events.iter().any(|event| {
91
- if &event.0 != contract {
91
+ let found = events.events().iter().any(|event| {
92
+ let Some((topics, data)) = decode_event_topics_data(env, event) else {
92
93
  return false;
93
- }
94
+ };
94
95
  // Check topics: ["threshold_set"]
95
- let topics = &event.1;
96
96
  if topics.len() != 1 {
97
97
  return false;
98
98
  }
@@ -101,7 +101,7 @@ fn assert_threshold_set_event(env: &Env, contract: &Address, threshold: u32) {
101
101
  return false;
102
102
  }
103
103
  // Check data is a map with "threshold" field
104
- let data_map: Map<Symbol, u32> = event.2.try_into_val(env).unwrap();
104
+ let data_map: Map<Symbol, u32> = data.try_into_val(env).unwrap();
105
105
  data_map.get(Symbol::new(env, "threshold")) == Some(threshold)
106
106
  });
107
107
  assert!(found, "threshold_set event not found");
@@ -6,7 +6,7 @@ use crate::{
6
6
  self, Ownable, OwnableInitializer, OwnableStorage, OwnershipRenounced, OwnershipTransferred,
7
7
  OwnershipTransferring,
8
8
  },
9
- testing_utils::assert_event,
9
+ testing_utils::assert_eq_event,
10
10
  };
11
11
  use soroban_sdk::{
12
12
  contract, contractimpl,
@@ -137,7 +137,7 @@ fn transfer_ownership_with_event() {
137
137
  }]);
138
138
  client.transfer_ownership(&new_owner);
139
139
 
140
- assert_event(&env, &contract, OwnershipTransferred { old_owner: owner, new_owner: new_owner.clone() });
140
+ assert_eq_event(&env, &contract, OwnershipTransferred { old_owner: owner, new_owner: new_owner.clone() });
141
141
  assert_eq!(client.owner(), Some(new_owner));
142
142
  }
143
143
 
@@ -163,7 +163,7 @@ fn transfer_ownership_to_same_owner() {
163
163
  client.transfer_ownership(&owner);
164
164
 
165
165
  // Should still emit event and update (even if same owner)
166
- assert_event(&env, &contract, OwnershipTransferred { old_owner: owner.clone(), new_owner: owner.clone() });
166
+ assert_eq_event(&env, &contract, OwnershipTransferred { old_owner: owner.clone(), new_owner: owner.clone() });
167
167
  assert_eq!(client.owner(), Some(owner));
168
168
  }
169
169
 
@@ -270,7 +270,7 @@ fn propose_ownership_transfer_initiate_and_accept() {
270
270
  }]);
271
271
  client.propose_ownership_transfer(&new_owner, &ttl);
272
272
 
273
- assert_event(
273
+ assert_eq_event(
274
274
  &env,
275
275
  &contract,
276
276
  OwnershipTransferring { old_owner: owner.clone(), new_owner: new_owner.clone(), ttl },
@@ -290,7 +290,7 @@ fn propose_ownership_transfer_initiate_and_accept() {
290
290
  }]);
291
291
  client.accept_ownership();
292
292
 
293
- assert_event(&env, &contract, OwnershipTransferred { old_owner: owner, new_owner: new_owner.clone() });
293
+ assert_eq_event(&env, &contract, OwnershipTransferred { old_owner: owner, new_owner: new_owner.clone() });
294
294
  assert_eq!(client.owner(), Some(new_owner)); // Now new owner
295
295
  assert_eq!(client.pending_owner(), None);
296
296
  }
@@ -564,7 +564,7 @@ fn renounce_ownership_with_event() {
564
564
  }]);
565
565
  client.renounce_ownership();
566
566
 
567
- assert_event(&env, &contract, OwnershipRenounced { old_owner: owner });
567
+ assert_eq_event(&env, &contract, OwnershipRenounced { old_owner: owner });
568
568
  assert_eq!(client.owner(), None);
569
569
  }
570
570
 
@@ -1,5 +1,5 @@
1
- use crate::testing_utils::{assert_event, assert_events, ExpectedEvent, IntoExpectedEvent};
2
- use soroban_sdk::{contract, contractevent, contractimpl, testutils::Address as _, Address, Env, IntoVal, Val, Vec};
1
+ use crate::testing_utils::{assert_contains_event, assert_contains_events, assert_eq_event, assert_eq_events};
2
+ use soroban_sdk::{contract, contractevent, contractimpl, testutils::Address as _, Address, Env};
3
3
 
4
4
  // ============================================
5
5
  // Test Fixtures
@@ -78,7 +78,7 @@ impl TestingUtilsContract {
78
78
  }
79
79
 
80
80
  // ============================================
81
- // assert_event
81
+ // assert_eq_event
82
82
  // ============================================
83
83
 
84
84
  // Basic functionality
@@ -91,7 +91,7 @@ fn test_assert_event_found() {
91
91
 
92
92
  client.emit_event1(&42);
93
93
 
94
- assert_event(&env, &contract_id, TestEvent1 { value: 42 });
94
+ assert_eq_event(&env, &contract_id, TestEvent1 { value: 42 });
95
95
  }
96
96
 
97
97
  #[test]
@@ -102,7 +102,7 @@ fn test_assert_event_with_multiple_fields() {
102
102
 
103
103
  client.emit_event2(&123, &456);
104
104
 
105
- assert_event(&env, &contract_id, TestEvent2 { name: 123, count: 456 });
105
+ assert_eq_event(&env, &contract_id, TestEvent2 { name: 123, count: 456 });
106
106
  }
107
107
 
108
108
  #[test]
@@ -114,7 +114,7 @@ fn test_assert_event_with_address() {
114
114
  let addr = Address::generate(&env);
115
115
  client.emit_event3(&addr);
116
116
 
117
- assert_event(&env, &contract_id, TestEvent3 { address: addr });
117
+ assert_eq_event(&env, &contract_id, TestEvent3 { address: addr });
118
118
  }
119
119
 
120
120
  #[test]
@@ -125,8 +125,8 @@ fn test_assert_event_among_multiple() {
125
125
 
126
126
  client.emit_multiple_events(&10, &20);
127
127
 
128
- assert_event(&env, &contract_id, TestEvent1 { value: 10 });
129
- assert_event(&env, &contract_id, TestEvent1 { value: 20 });
128
+ assert_contains_event(&env, &contract_id, TestEvent1 { value: 10 });
129
+ assert_contains_event(&env, &contract_id, TestEvent1 { value: 20 });
130
130
  }
131
131
 
132
132
  // Edge cases
@@ -139,7 +139,7 @@ fn test_assert_event_finds_first_matching_event() {
139
139
 
140
140
  client.emit_multiple_events(&42, &42);
141
141
 
142
- assert_event(&env, &contract_id, TestEvent1 { value: 42 });
142
+ assert_contains_event(&env, &contract_id, TestEvent1 { value: 42 });
143
143
  }
144
144
 
145
145
  #[test]
@@ -151,23 +151,23 @@ fn test_assert_event_finds_correct_event_among_many() {
151
151
  // Use single contract call that emits all events (events don't accumulate across calls)
152
152
  client.emit_mixed_four_events(&1, &100, &200, &2, &3);
153
153
 
154
- assert_event(&env, &contract_id, TestEvent1 { value: 2 });
155
- assert_event(&env, &contract_id, TestEvent2 { name: 100, count: 200 });
154
+ assert_contains_event(&env, &contract_id, TestEvent1 { value: 2 });
155
+ assert_contains_event(&env, &contract_id, TestEvent2 { name: 100, count: 200 });
156
156
  }
157
157
 
158
158
  // Error cases
159
159
 
160
160
  #[test]
161
- #[should_panic(expected = "Expected event not found")]
161
+ #[should_panic(expected = "Expected exactly one event")]
162
162
  fn test_assert_event_no_events_emitted() {
163
163
  let env = Env::default();
164
164
  let contract_id = env.register(TestingUtilsContract, ());
165
165
 
166
- assert_event(&env, &contract_id, TestEvent1 { value: 42 });
166
+ assert_eq_event(&env, &contract_id, TestEvent1 { value: 42 });
167
167
  }
168
168
 
169
169
  #[test]
170
- #[should_panic(expected = "Expected event not found")]
170
+ #[should_panic(expected = "Expected exactly one event")]
171
171
  fn test_assert_event_not_found() {
172
172
  let env = Env::default();
173
173
  let contract_id = env.register(TestingUtilsContract, ());
@@ -175,11 +175,11 @@ fn test_assert_event_not_found() {
175
175
 
176
176
  client.emit_event1(&42);
177
177
 
178
- assert_event(&env, &contract_id, TestEvent1 { value: 100 });
178
+ assert_eq_event(&env, &contract_id, TestEvent1 { value: 100 });
179
179
  }
180
180
 
181
181
  #[test]
182
- #[should_panic(expected = "Expected event not found")]
182
+ #[should_panic(expected = "Expected exactly one event")]
183
183
  fn test_assert_event_wrong_contract() {
184
184
  let env = Env::default();
185
185
  let contract_id = env.register(TestingUtilsContract, ());
@@ -188,11 +188,11 @@ fn test_assert_event_wrong_contract() {
188
188
 
189
189
  client.emit_event1(&42);
190
190
 
191
- assert_event(&env, &other_contract_id, TestEvent1 { value: 42 });
191
+ assert_eq_event(&env, &other_contract_id, TestEvent1 { value: 42 });
192
192
  }
193
193
 
194
194
  #[test]
195
- #[should_panic(expected = "Expected event not found")]
195
+ #[should_panic(expected = "Expected exactly one event")]
196
196
  fn test_assert_event_topics_length_mismatch() {
197
197
  let env = Env::default();
198
198
  let contract_id = env.register(TestingUtilsContract, ());
@@ -200,11 +200,11 @@ fn test_assert_event_topics_length_mismatch() {
200
200
 
201
201
  client.emit_event1(&42);
202
202
 
203
- assert_event(&env, &contract_id, TestEvent2 { name: 42, count: 0 });
203
+ assert_eq_event(&env, &contract_id, TestEvent2 { name: 42, count: 0 });
204
204
  }
205
205
 
206
206
  #[test]
207
- #[should_panic(expected = "Expected event not found")]
207
+ #[should_panic(expected = "Expected exactly one event")]
208
208
  fn test_assert_event_data_mismatch() {
209
209
  let env = Env::default();
210
210
  let contract_id = env.register(TestingUtilsContract, ());
@@ -212,11 +212,11 @@ fn test_assert_event_data_mismatch() {
212
212
 
213
213
  client.emit_event2(&123, &456);
214
214
 
215
- assert_event(&env, &contract_id, TestEvent2 { name: 123, count: 789 });
215
+ assert_eq_event(&env, &contract_id, TestEvent2 { name: 123, count: 789 });
216
216
  }
217
217
 
218
218
  // ============================================
219
- // assert_events
219
+ // assert_eq_events
220
220
  // ============================================
221
221
 
222
222
  // Basic functionality
@@ -229,7 +229,7 @@ fn test_assert_events_single() {
229
229
 
230
230
  client.emit_event1(&42);
231
231
 
232
- assert_events(&env, &contract_id, &[TestEvent1 { value: 42 }.expected(&env)]);
232
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }]);
233
233
  }
234
234
 
235
235
  #[test]
@@ -240,11 +240,7 @@ fn test_assert_events_multiple_same_type() {
240
240
 
241
241
  client.emit_multiple_events(&10, &20);
242
242
 
243
- assert_events(
244
- &env,
245
- &contract_id,
246
- &[TestEvent1 { value: 10 }.expected(&env), TestEvent1 { value: 20 }.expected(&env)],
247
- );
243
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 10 }, &TestEvent1 { value: 20 }]);
248
244
  }
249
245
 
250
246
  #[test]
@@ -255,11 +251,7 @@ fn test_assert_events_multiple_different_types() {
255
251
 
256
252
  client.emit_both_events(&42, &123, &456);
257
253
 
258
- assert_events(
259
- &env,
260
- &contract_id,
261
- &[TestEvent1 { value: 42 }.expected(&env), TestEvent2 { name: 123, count: 456 }.expected(&env)],
262
- );
254
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }, &TestEvent2 { name: 123, count: 456 }]);
263
255
  }
264
256
 
265
257
  #[test]
@@ -270,11 +262,7 @@ fn test_assert_events_order_independent() {
270
262
 
271
263
  client.emit_both_events(&42, &123, &456);
272
264
 
273
- assert_events(
274
- &env,
275
- &contract_id,
276
- &[TestEvent2 { name: 123, count: 456 }.expected(&env), TestEvent1 { value: 42 }.expected(&env)],
277
- );
265
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }, &TestEvent2 { name: 123, count: 456 }]);
278
266
  }
279
267
 
280
268
  #[test]
@@ -282,7 +270,7 @@ fn test_assert_events_empty_list() {
282
270
  let env = Env::default();
283
271
  let contract_id = env.register(TestingUtilsContract, ());
284
272
 
285
- assert_events(&env, &contract_id, &[]);
273
+ assert_eq_events(&env, &contract_id, &[]);
286
274
  }
287
275
 
288
276
  #[test]
@@ -293,11 +281,7 @@ fn test_assert_events_with_duplicates() {
293
281
 
294
282
  client.emit_multiple_events(&42, &42);
295
283
 
296
- assert_events(
297
- &env,
298
- &contract_id,
299
- &[TestEvent1 { value: 42 }.expected(&env), TestEvent1 { value: 42 }.expected(&env)],
300
- );
284
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }, &TestEvent1 { value: 42 }]);
301
285
  }
302
286
 
303
287
  // Edge cases
@@ -311,7 +295,7 @@ fn test_assert_events_partial_match() {
311
295
  // Use single contract call that emits all events (events don't accumulate across calls)
312
296
  client.emit_two_plus_event2(&10, &20, &100, &200);
313
297
 
314
- assert_events(&env, &contract_id, &[TestEvent1 { value: 10 }.expected(&env)]);
298
+ assert_contains_events(&env, &contract_id, &[&TestEvent1 { value: 10 }]);
315
299
  }
316
300
 
317
301
  #[test]
@@ -323,14 +307,10 @@ fn test_assert_events_three_events() {
323
307
  // Use single contract call that emits all events (events don't accumulate across calls)
324
308
  client.emit_three_events(&1, &2, &3);
325
309
 
326
- assert_events(
310
+ assert_eq_events(
327
311
  &env,
328
312
  &contract_id,
329
- &[
330
- TestEvent1 { value: 1 }.expected(&env),
331
- TestEvent1 { value: 2 }.expected(&env),
332
- TestEvent1 { value: 3 }.expected(&env),
333
- ],
313
+ &[&TestEvent1 { value: 1 }, &TestEvent1 { value: 2 }, &TestEvent1 { value: 3 }],
334
314
  );
335
315
  }
336
316
 
@@ -345,14 +325,10 @@ fn test_assert_events_mixed_event_types_three() {
345
325
  // Use single contract call that emits all events (events don't accumulate across calls)
346
326
  client.emit_mixed_three_types(&42, &100, &200, &addr);
347
327
 
348
- assert_events(
328
+ assert_eq_events(
349
329
  &env,
350
330
  &contract_id,
351
- &[
352
- TestEvent3 { address: addr.clone() }.expected(&env),
353
- TestEvent1 { value: 42 }.expected(&env),
354
- TestEvent2 { name: 100, count: 200 }.expected(&env),
355
- ],
331
+ &[&TestEvent1 { value: 42 }, &TestEvent2 { name: 100, count: 200 }, &TestEvent3 { address: addr.clone() }],
356
332
  );
357
333
  }
358
334
 
@@ -368,21 +344,17 @@ fn test_assert_events_from_specific_contract_ignores_others() {
368
344
  client1.emit_multiple_events(&10, &30);
369
345
 
370
346
  // Assert events from contract1 are found when using contract1's address
371
- assert_events(
372
- &env,
373
- &contract_id1,
374
- &[TestEvent1 { value: 10 }.expected(&env), TestEvent1 { value: 30 }.expected(&env)],
375
- );
347
+ assert_eq_events(&env, &contract_id1, &[&TestEvent1 { value: 10 }, &TestEvent1 { value: 30 }]);
376
348
 
377
349
  // Verify that using contract2's address doesn't match contract1's events
378
350
  // (this tests the filtering logic - events should not be found for wrong contract)
379
- assert_events(&env, &contract_id2, &[]);
351
+ assert_contains_events(&env, &contract_id2, &[]);
380
352
  }
381
353
 
382
354
  // Error cases
383
355
 
384
356
  #[test]
385
- #[should_panic(expected = "Expected event #0 not found")]
357
+ #[should_panic(expected = "Expected events to match exactly")]
386
358
  fn test_assert_events_first_not_found() {
387
359
  let env = Env::default();
388
360
  let contract_id = env.register(TestingUtilsContract, ());
@@ -390,11 +362,11 @@ fn test_assert_events_first_not_found() {
390
362
 
391
363
  client.emit_event1(&42);
392
364
 
393
- assert_events(&env, &contract_id, &[TestEvent1 { value: 100 }.expected(&env)]);
365
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 100 }]);
394
366
  }
395
367
 
396
368
  #[test]
397
- #[should_panic(expected = "Expected event #1 not found")]
369
+ #[should_panic(expected = "Expected events to match exactly")]
398
370
  fn test_assert_events_second_not_found() {
399
371
  let env = Env::default();
400
372
  let contract_id = env.register(TestingUtilsContract, ());
@@ -402,15 +374,11 @@ fn test_assert_events_second_not_found() {
402
374
 
403
375
  client.emit_event1(&42);
404
376
 
405
- assert_events(
406
- &env,
407
- &contract_id,
408
- &[TestEvent1 { value: 42 }.expected(&env), TestEvent1 { value: 100 }.expected(&env)],
409
- );
377
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }, &TestEvent1 { value: 100 }]);
410
378
  }
411
379
 
412
380
  #[test]
413
- #[should_panic(expected = "Expected event #2 not found")]
381
+ #[should_panic(expected = "Expected events to match exactly")]
414
382
  fn test_assert_events_third_not_found() {
415
383
  let env = Env::default();
416
384
  let contract_id = env.register(TestingUtilsContract, ());
@@ -418,19 +386,15 @@ fn test_assert_events_third_not_found() {
418
386
 
419
387
  client.emit_multiple_events(&10, &20);
420
388
 
421
- assert_events(
389
+ assert_eq_events(
422
390
  &env,
423
391
  &contract_id,
424
- &[
425
- TestEvent1 { value: 10 }.expected(&env),
426
- TestEvent1 { value: 20 }.expected(&env),
427
- TestEvent1 { value: 30 }.expected(&env),
428
- ],
392
+ &[&TestEvent1 { value: 10 }, &TestEvent1 { value: 20 }, &TestEvent1 { value: 30 }],
429
393
  );
430
394
  }
431
395
 
432
396
  #[test]
433
- #[should_panic(expected = "Expected event #1 not found")]
397
+ #[should_panic(expected = "Expected events to match exactly")]
434
398
  fn test_assert_events_duplicate_expected_but_not_emitted() {
435
399
  let env = Env::default();
436
400
  let contract_id = env.register(TestingUtilsContract, ());
@@ -438,24 +402,20 @@ fn test_assert_events_duplicate_expected_but_not_emitted() {
438
402
 
439
403
  client.emit_event1(&42);
440
404
 
441
- assert_events(
442
- &env,
443
- &contract_id,
444
- &[TestEvent1 { value: 42 }.expected(&env), TestEvent1 { value: 42 }.expected(&env)],
445
- );
405
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }, &TestEvent1 { value: 42 }]);
446
406
  }
447
407
 
448
408
  #[test]
449
- #[should_panic(expected = "Expected event #0 not found")]
409
+ #[should_panic(expected = "Expected events to match exactly")]
450
410
  fn test_assert_events_no_events_emitted() {
451
411
  let env = Env::default();
452
412
  let contract_id = env.register(TestingUtilsContract, ());
453
413
 
454
- assert_events(&env, &contract_id, &[TestEvent1 { value: 42 }.expected(&env)]);
414
+ assert_eq_events(&env, &contract_id, &[&TestEvent1 { value: 42 }]);
455
415
  }
456
416
 
457
417
  #[test]
458
- #[should_panic(expected = "Expected event #0 not found")]
418
+ #[should_panic(expected = "Expected events to match exactly")]
459
419
  fn test_assert_events_wrong_contract() {
460
420
  let env = Env::default();
461
421
  let contract_id1 = env.register(TestingUtilsContract, ());
@@ -464,27 +424,11 @@ fn test_assert_events_wrong_contract() {
464
424
 
465
425
  client1.emit_event1(&42);
466
426
 
467
- assert_events(&env, &contract_id2, &[TestEvent1 { value: 42 }.expected(&env)]);
468
- }
469
-
470
- #[test]
471
- #[should_panic(expected = "Expected event #0 not found")]
472
- fn test_assert_events_topics_length_mismatch() {
473
- let env = Env::default();
474
- let contract_id = env.register(TestingUtilsContract, ());
475
- let client = TestingUtilsContractClient::new(&env, &contract_id);
476
-
477
- client.emit_event1(&42);
478
-
479
- let empty_topics: Vec<Val> = Vec::new(&env);
480
- let data: Val = 42u32.into_val(&env);
481
- let expected_with_empty_topics = ExpectedEvent { topics: empty_topics, data };
482
-
483
- assert_events(&env, &contract_id, &[expected_with_empty_topics]);
427
+ assert_eq_events(&env, &contract_id2, &[&TestEvent1 { value: 42 }]);
484
428
  }
485
429
 
486
430
  #[test]
487
- #[should_panic(expected = "Expected event #0 not found")]
431
+ #[should_panic(expected = "Expected events to match exactly")]
488
432
  fn test_assert_events_data_mismatch() {
489
433
  let env = Env::default();
490
434
  let contract_id = env.register(TestingUtilsContract, ());
@@ -492,66 +436,5 @@ fn test_assert_events_data_mismatch() {
492
436
 
493
437
  client.emit_event2(&100, &200);
494
438
 
495
- assert_events(&env, &contract_id, &[TestEvent2 { name: 100, count: 999 }.expected(&env)]);
496
- }
497
-
498
- // ============================================
499
- // ExpectedEvent & IntoExpectedEvent
500
- // ============================================
501
-
502
- #[test]
503
- fn test_into_expected_event() {
504
- let env = Env::default();
505
-
506
- let event = TestEvent1 { value: 42 };
507
- let expected = event.expected(&env);
508
-
509
- assert!(!expected.topics.is_empty());
510
- }
511
-
512
- #[test]
513
- fn test_into_expected_event_with_multiple_fields() {
514
- let env = Env::default();
515
-
516
- let event = TestEvent2 { name: 123, count: 456 };
517
- let expected = event.expected(&env);
518
-
519
- assert!(!expected.topics.is_empty());
520
- }
521
-
522
- #[test]
523
- fn test_into_expected_event_with_address() {
524
- let env = Env::default();
525
-
526
- let addr = Address::generate(&env);
527
- let event = TestEvent3 { address: addr };
528
- let expected = event.expected(&env);
529
-
530
- assert!(!expected.topics.is_empty());
531
- }
532
-
533
- #[test]
534
- fn test_expected_event_struct() {
535
- let env = Env::default();
536
-
537
- let topics: Vec<Val> = Vec::new(&env);
538
- let data: Val = 42u32.into_val(&env);
539
-
540
- let expected = ExpectedEvent { topics, data };
541
-
542
- assert_eq!(expected.topics.len(), 0);
543
- }
544
-
545
- #[test]
546
- fn test_expected_event_with_topics() {
547
- let env = Env::default();
548
-
549
- let mut topics: Vec<Val> = Vec::new(&env);
550
- topics.push_back(42u32.into_val(&env));
551
- topics.push_back(100u64.into_val(&env));
552
- let data: Val = 999u32.into_val(&env);
553
-
554
- let expected = ExpectedEvent { topics, data };
555
-
556
- assert_eq!(expected.topics.len(), 2);
439
+ assert_eq_events(&env, &contract_id, &[&TestEvent2 { name: 100, count: 999 }]);
557
440
  }
@@ -5,7 +5,7 @@ use crate::{
5
5
  errors::{OwnableError, TtlConfigurableError},
6
6
  option_ext::OptionExt,
7
7
  ownable::{Ownable, OwnableInitializer},
8
- testing_utils::assert_event,
8
+ testing_utils::assert_eq_event,
9
9
  ttl_configurable::{
10
10
  TtlConfig, TtlConfigStorage, TtlConfigsFrozen, TtlConfigsSet, TtlConfigurable, LEDGERS_PER_DAY, MAX_TTL,
11
11
  },
@@ -314,7 +314,7 @@ fn test_default_ttl_configurable_set_all() {
314
314
  let persistent = Some(persistent_cfg);
315
315
  owner_set_ttl_configs(&env, &contract_id, &owner, &client, &instance, &persistent);
316
316
 
317
- assert_event(&env, &contract_id, TtlConfigsSet { instance, persistent });
317
+ assert_eq_event(&env, &contract_id, TtlConfigsSet { instance, persistent });
318
318
 
319
319
  let (instance, persistent) = client.configurable_ttl_configs();
320
320
  assert_eq!(instance, Some(instance_cfg));
@@ -331,7 +331,7 @@ fn test_default_ttl_configurable_set_partial() {
331
331
  let instance = Some(instance_cfg);
332
332
  let persistent = None;
333
333
  owner_set_ttl_configs(&env, &contract_id, &owner, &client, &instance, &persistent);
334
- assert_event(&env, &contract_id, TtlConfigsSet { instance, persistent });
334
+ assert_eq_event(&env, &contract_id, TtlConfigsSet { instance, persistent });
335
335
 
336
336
  let (instance, persistent) = client.configurable_ttl_configs();
337
337
  assert_eq!(instance, Some(instance_cfg));
@@ -375,7 +375,7 @@ fn test_default_ttl_configurable_freeze() {
375
375
 
376
376
  assert!(!client.is_ttl_configs_frozen());
377
377
  owner_freeze_ttl_configs(&env, &contract_id, &owner, &client);
378
- assert_event(&env, &contract_id, TtlConfigsFrozen {});
378
+ assert_eq_event(&env, &contract_id, TtlConfigsFrozen {});
379
379
  assert!(client.is_ttl_configs_frozen());
380
380
  }
381
381
 
@@ -398,7 +398,7 @@ fn test_default_ttl_configurable_freeze_when_already_frozen() {
398
398
  let (env, contract_id, owner, client) = setup_contract();
399
399
 
400
400
  owner_freeze_ttl_configs(&env, &contract_id, &owner, &client);
401
- assert_event(&env, &contract_id, TtlConfigsFrozen {});
401
+ assert_eq_event(&env, &contract_id, TtlConfigsFrozen {});
402
402
  owner_freeze_ttl_configs(&env, &contract_id, &owner, &client);
403
403
  }
404
404