Skip to content

Commit 0093f74

Browse files
committed
fix(ffi): Add FFIError cleanup to remaining test files
Added free_message() cleanup calls to: - derivation_tests.rs - keys_tests.rs - transaction_tests.rs - account_tests.rs - account_derivation_tests.rs - managed_wallet_tests.rs
1 parent 1ebe98f commit 0093f74

6 files changed

Lines changed: 102 additions & 36 deletions

File tree

key-wallet-ffi/src/account_derivation_tests.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ mod tests {
5959
extended_private_key_free(master_xpriv);
6060
account_free(account);
6161
wallet::wallet_free(wallet);
62+
error.free_message();
6263
}
6364
}
6465

@@ -97,6 +98,8 @@ mod tests {
9798
);
9899
assert_eq!(error.code, FFIErrorCode::InvalidInput);
99100
}
101+
102+
unsafe { error.free_message() };
100103
}
101104

102105
#[test]
@@ -134,6 +137,7 @@ mod tests {
134137
extended_private_key_free(master_xpriv);
135138
account_free(account);
136139
wallet::wallet_free(wallet);
140+
error.free_message();
137141
}
138142
}
139143

@@ -213,6 +217,7 @@ mod tests {
213217
unsafe {
214218
account_free(account);
215219
wallet::wallet_free(wallet);
220+
error.free_message();
216221
}
217222
}
218223

key-wallet-ffi/src/account_tests.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ mod tests {
7777

7878
assert_eq!(count, 0);
7979
assert_eq!(error.code, FFIErrorCode::InvalidInput);
80+
81+
unsafe { error.free_message() };
8082
}
8183

8284
#[test]
@@ -105,6 +107,7 @@ mod tests {
105107
// Clean up
106108
unsafe {
107109
wallet::wallet_free(wallet);
110+
error.free_message();
108111
}
109112
}
110113

@@ -190,6 +193,7 @@ mod tests {
190193
// Clean up
191194
unsafe {
192195
wallet::wallet_free(wallet);
196+
error.free_message();
193197
}
194198
}
195199

key-wallet-ffi/src/derivation_tests.rs

Lines changed: 44 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ mod tests {
4242
// Clean up
4343
unsafe {
4444
derivation_xpriv_free(xprv);
45+
error.free_message();
4546
}
4647
}
4748

@@ -67,9 +68,8 @@ mod tests {
6768
// Clean up
6869
unsafe {
6970
derivation_xpub_free(xpub);
70-
}
71-
unsafe {
7271
derivation_xpriv_free(xprv);
72+
error.free_message();
7373
}
7474
}
7575

@@ -97,9 +97,8 @@ mod tests {
9797
// Clean up
9898
unsafe {
9999
derivation_string_free(xprv_str);
100-
}
101-
unsafe {
102100
derivation_xpriv_free(xprv);
101+
error.free_message();
103102
}
104103
}
105104

@@ -129,12 +128,9 @@ mod tests {
129128
// Clean up
130129
unsafe {
131130
derivation_string_free(xpub_str);
132-
}
133-
unsafe {
134131
derivation_xpub_free(xpub);
135-
}
136-
unsafe {
137132
derivation_xpriv_free(xprv);
133+
error.free_message();
138134
}
139135
}
140136

@@ -166,9 +162,8 @@ mod tests {
166162
// Clean up
167163
unsafe {
168164
derivation_xpub_free(xpub);
169-
}
170-
unsafe {
171165
derivation_xpriv_free(xprv);
166+
error.free_message();
172167
}
173168
}
174169

@@ -207,6 +202,8 @@ mod tests {
207202
let path_str =
208203
unsafe { CStr::from_ptr(payment_path.as_ptr() as *const c_char) }.to_str().unwrap();
209204
assert_eq!(path_str, "m/44'/1'/0'/0/0");
205+
206+
unsafe { error.free_message() };
210207
}
211208

212209
#[test]
@@ -258,6 +255,8 @@ mod tests {
258255
&mut error,
259256
);
260257
assert!(success);
258+
259+
unsafe { error.free_message() };
261260
}
262261

263262
#[test]
@@ -289,6 +288,7 @@ mod tests {
289288
// Clean up
290289
unsafe {
291290
derivation_xpriv_free(xpriv);
291+
error.free_message();
292292
}
293293
}
294294

@@ -304,6 +304,8 @@ mod tests {
304304

305305
// Note: The BIP32 implementation actually accepts seeds as small as 16 bytes
306306
// so we can't test for invalid seed length error here
307+
308+
unsafe { error.free_message() };
307309
}
308310

309311
#[test]
@@ -329,12 +331,9 @@ mod tests {
329331
// Clean up
330332
unsafe {
331333
derivation_string_free(xpub_string);
332-
}
333-
unsafe {
334334
derivation_xpub_free(xpub);
335-
}
336-
unsafe {
337335
derivation_xpriv_free(master_key);
336+
error.free_message();
338337
}
339338
}
340339

@@ -363,9 +362,8 @@ mod tests {
363362
// Clean up
364363
unsafe {
365364
derivation_string_free(xpriv_string);
366-
}
367-
unsafe {
368365
derivation_xpriv_free(master_key);
366+
error.free_message();
369367
}
370368
}
371369

@@ -396,9 +394,8 @@ mod tests {
396394
// Clean up
397395
unsafe {
398396
derivation_xpub_free(xpub);
399-
}
400-
unsafe {
401397
derivation_xpriv_free(master_key);
398+
error.free_message();
402399
}
403400
}
404401

@@ -452,6 +449,8 @@ mod tests {
452449
let path_str =
453450
unsafe { CStr::from_ptr(buffer.as_ptr() as *const c_char) }.to_str().unwrap();
454451
assert!(path_str.contains("m/"));
452+
453+
unsafe { error.free_message() };
455454
}
456455

457456
#[test]
@@ -494,6 +493,8 @@ mod tests {
494493
derivation_xpriv_free(xprv);
495494
}
496495
}
496+
497+
unsafe { error.free_message() };
497498
}
498499

499500
#[test]
@@ -524,6 +525,8 @@ mod tests {
524525
derivation_coinjoin_path(FFINetwork::Testnet, 0, ptr::null_mut(), 256, &mut error);
525526
assert!(!success);
526527
assert_eq!(error.code, FFIErrorCode::InvalidInput);
528+
529+
unsafe { error.free_message() };
527530
}
528531

529532
#[test]
@@ -554,6 +557,8 @@ mod tests {
554557
);
555558
assert!(!success);
556559
assert_eq!(error.code, FFIErrorCode::InvalidInput);
560+
561+
unsafe { error.free_message() };
557562
}
558563

559564
#[test]
@@ -591,15 +596,10 @@ mod tests {
591596
// Clean up
592597
unsafe {
593598
derivation_string_free(main_str);
594-
}
595-
unsafe {
596599
derivation_string_free(test_str);
597-
}
598-
unsafe {
599600
derivation_xpriv_free(xprv_main);
600-
}
601-
unsafe {
602601
derivation_xpriv_free(xprv_test);
602+
error.free_message();
603603
}
604604
}
605605

@@ -611,6 +611,8 @@ mod tests {
611611

612612
assert!(xpub.is_null());
613613
assert_eq!(error.code, FFIErrorCode::InvalidInput);
614+
615+
unsafe { error.free_message() };
614616
}
615617

616618
#[test]
@@ -621,6 +623,8 @@ mod tests {
621623

622624
assert!(xprv_str.is_null());
623625
assert_eq!(error.code, FFIErrorCode::InvalidInput);
626+
627+
unsafe { error.free_message() };
624628
}
625629

626630
#[test]
@@ -631,6 +635,8 @@ mod tests {
631635

632636
assert!(xpub_str.is_null());
633637
assert_eq!(error.code, FFIErrorCode::InvalidInput);
638+
639+
unsafe { error.free_message() };
634640
}
635641

636642
#[test]
@@ -664,9 +670,8 @@ mod tests {
664670
// Clean up
665671
unsafe {
666672
derivation_xpub_free(xpub);
667-
}
668-
unsafe {
669673
derivation_xpriv_free(xprv);
674+
error.free_message();
670675
}
671676
}
672677

@@ -701,6 +706,8 @@ mod tests {
701706
};
702707
assert!(xpriv.is_null());
703708
assert_eq!(error.code, FFIErrorCode::InvalidInput);
709+
710+
unsafe { error.free_message() };
704711
}
705712

706713
#[test]
@@ -729,6 +736,8 @@ mod tests {
729736
derivation_xpriv_free(xpriv);
730737
}
731738
}
739+
740+
unsafe { error.free_message() };
732741
}
733742

734743
#[test]
@@ -769,6 +778,8 @@ mod tests {
769778
);
770779
assert!(!success);
771780
assert_eq!(error.code, FFIErrorCode::InvalidInput);
781+
782+
unsafe { error.free_message() };
772783
}
773784

774785
#[test]
@@ -810,6 +821,8 @@ mod tests {
810821
);
811822
assert!(!success);
812823
assert_eq!(error.code, FFIErrorCode::InvalidInput);
824+
825+
unsafe { error.free_message() };
813826
}
814827

815828
#[test]
@@ -843,6 +856,8 @@ mod tests {
843856
assert_eq!(path1, "m/44'/1'/0'");
844857
assert_eq!(path2, "m/44'/1'/5'");
845858
assert_ne!(path1, path2);
859+
860+
unsafe { error.free_message() };
846861
}
847862

848863
#[test]
@@ -880,6 +895,8 @@ mod tests {
880895
let path_str =
881896
unsafe { CStr::from_ptr(buffer.as_ptr() as *const c_char) }.to_str().unwrap();
882897
assert_eq!(path_str, "m/44'/1'/0'/1/3");
898+
899+
unsafe { error.free_message() };
883900
}
884901

885902
#[test]
@@ -957,6 +974,7 @@ mod tests {
957974
derivation_xpriv_free(child_xprv);
958975
derivation_xpub_free(master_xpub);
959976
derivation_xpriv_free(master_xprv);
977+
error.free_message();
960978
}
961979
}
962980
}

0 commit comments

Comments
 (0)