@@ -21,8 +21,8 @@ use std::{
21
21
} ;
22
22
use temporal_client:: WorkflowOptions ;
23
23
use temporal_sdk:: {
24
- ActContext , ActivityCancelledError , LocalActivityOptions , WfContext , WorkflowFunction ,
25
- WorkflowResult ,
24
+ ActContext , ActExitValue , ActivityCancelledError , ActivityFunction , LocalActivityOptions ,
25
+ WfContext , WorkflowFunction , WorkflowResult ,
26
26
} ;
27
27
use temporal_sdk_core_api:: {
28
28
errors:: { PollActivityError , PollWfError } ,
@@ -101,7 +101,7 @@ async fn local_act_two_wfts_before_marker(#[case] replay: bool, #[case] cached:
101
101
Ok ( ( ) . into ( ) )
102
102
} ,
103
103
) ;
104
- worker. register_activity ( DEFAULT_ACTIVITY_TYPE , echo) ;
104
+ worker. register_activity ( DEFAULT_ACTIVITY_TYPE , ActivityFunction :: from ( echo) ) ;
105
105
worker
106
106
. submit_wf (
107
107
wf_id. to_owned ( ) ,
@@ -151,7 +151,7 @@ async fn local_act_many_concurrent() {
151
151
let mut worker = mock_sdk ( mh) ;
152
152
153
153
worker. register_wf ( DEFAULT_WORKFLOW_TYPE . to_owned ( ) , local_act_fanout_wf) ;
154
- worker. register_activity ( "echo" , echo) ;
154
+ worker. register_activity ( "echo" , ActivityFunction :: from ( echo) ) ;
155
155
worker
156
156
. submit_wf (
157
157
wf_id. to_owned ( ) ,
@@ -207,14 +207,17 @@ async fn local_act_heartbeat(#[case] shutdown_middle: bool) {
207
207
Ok ( ( ) . into ( ) )
208
208
} ,
209
209
) ;
210
- worker. register_activity ( "echo" , move |_ctx : ActContext , str : String | async move {
211
- if shutdown_middle {
212
- shutdown_barr. wait ( ) . await ;
213
- }
214
- // Take slightly more than two workflow tasks
215
- tokio:: time:: sleep ( wft_timeout. mul_f32 ( 2.2 ) ) . await ;
216
- Ok ( str)
217
- } ) ;
210
+ worker. register_activity (
211
+ "echo" ,
212
+ ActivityFunction :: from ( move |_ctx : ActContext , str : String | async move {
213
+ if shutdown_middle {
214
+ shutdown_barr. wait ( ) . await ;
215
+ }
216
+ // Take slightly more than two workflow tasks
217
+ tokio:: time:: sleep ( wft_timeout. mul_f32 ( 2.2 ) ) . await ;
218
+ Ok ( str)
219
+ } ) ,
220
+ ) ;
218
221
worker
219
222
. submit_wf (
220
223
wf_id. to_owned ( ) ,
@@ -276,10 +279,10 @@ async fn local_act_fail_and_retry(#[case] eventually_pass: bool) {
276
279
} ,
277
280
) ;
278
281
let attempts: & ' static _ = Box :: leak ( Box :: new ( AtomicUsize :: new ( 0 ) ) ) ;
279
- worker. register_activity ( "echo" , move |_ctx : ActContext , _ : String | async move {
282
+ worker. register_activity ( "echo" , move |_ctx : ActContext | async move {
280
283
// Succeed on 3rd attempt (which is ==2 since fetch_add returns prev val)
281
284
if 2 == attempts. fetch_add ( 1 , Ordering :: Relaxed ) && eventually_pass {
282
- Ok ( ( ) )
285
+ Ok ( ( ) . into ( ) )
283
286
} else {
284
287
Err ( anyhow ! ( "Oh no I failed!" ) )
285
288
}
@@ -355,12 +358,9 @@ async fn local_act_retry_long_backoff_uses_timer() {
355
358
Ok ( ( ) . into ( ) )
356
359
} ,
357
360
) ;
358
- worker. register_activity (
359
- DEFAULT_ACTIVITY_TYPE ,
360
- move |_ctx : ActContext , _: String | async move {
361
- Result :: < ( ) , _ > :: Err ( anyhow ! ( "Oh no I failed!" ) )
362
- } ,
363
- ) ;
361
+ worker. register_activity ( DEFAULT_ACTIVITY_TYPE , move |_ctx : ActContext | async move {
362
+ Result :: < ActExitValue < ( ) > , _ > :: Err ( anyhow ! ( "Oh no I failed!" ) )
363
+ } ) ;
364
364
worker
365
365
. submit_wf (
366
366
wf_id. to_owned ( ) ,
@@ -398,7 +398,7 @@ async fn local_act_null_result() {
398
398
Ok ( ( ) . into ( ) )
399
399
} ,
400
400
) ;
401
- worker. register_activity ( "nullres" , |_ctx : ActContext , _ : String | async { Ok ( ( ) ) } ) ;
401
+ worker. register_activity ( "nullres" , |_ctx : ActContext | async { Ok ( ( ) . into ( ) ) } ) ;
402
402
worker
403
403
. submit_wf (
404
404
wf_id. to_owned ( ) ,
@@ -442,7 +442,7 @@ async fn local_act_command_immediately_follows_la_marker() {
442
442
Ok ( ( ) . into ( ) )
443
443
} ,
444
444
) ;
445
- worker. register_activity ( "nullres" , |_ctx : ActContext , _ : String | async { Ok ( ( ) ) } ) ;
445
+ worker. register_activity ( "nullres" , |_ctx : ActContext | async { Ok ( ( ) . into ( ) ) } ) ;
446
446
worker
447
447
. submit_wf (
448
448
wf_id. to_owned ( ) ,
@@ -778,10 +778,7 @@ async fn test_schedule_to_start_timeout() {
778
778
Ok ( ( ) . into ( ) )
779
779
} ,
780
780
) ;
781
- worker. register_activity (
782
- "echo" ,
783
- move |_ctx : ActContext , _: String | async move { Ok ( ( ) ) } ,
784
- ) ;
781
+ worker. register_activity ( "echo" , move |_ctx : ActContext | async move { Ok ( ( ) . into ( ) ) } ) ;
785
782
worker
786
783
. submit_wf (
787
784
wf_id. to_owned ( ) ,
@@ -868,10 +865,7 @@ async fn test_schedule_to_start_timeout_not_based_on_original_time(
868
865
Ok ( ( ) . into ( ) )
869
866
} ,
870
867
) ;
871
- worker. register_activity (
872
- "echo" ,
873
- move |_ctx : ActContext , _: String | async move { Ok ( ( ) ) } ,
874
- ) ;
868
+ worker. register_activity ( "echo" , move |_ctx : ActContext | async move { Ok ( ( ) . into ( ) ) } ) ;
875
869
worker
876
870
. submit_wf (
877
871
wf_id. to_owned ( ) ,
@@ -917,16 +911,13 @@ async fn wft_failure_cancels_running_las() {
917
911
Ok ( ( ) . into ( ) )
918
912
} ,
919
913
) ;
920
- worker. register_activity (
921
- DEFAULT_ACTIVITY_TYPE ,
922
- move |ctx : ActContext , _: String | async move {
923
- let res = tokio:: time:: timeout ( Duration :: from_millis ( 500 ) , ctx. cancelled ( ) ) . await ;
924
- if res. is_err ( ) {
925
- panic ! ( "Activity must be cancelled!!!!" ) ;
926
- }
927
- Result :: < ( ) , _ > :: Err ( ActivityCancelledError :: default ( ) . into ( ) )
928
- } ,
929
- ) ;
914
+ worker. register_activity ( DEFAULT_ACTIVITY_TYPE , move |ctx : ActContext | async move {
915
+ let res = tokio:: time:: timeout ( Duration :: from_millis ( 500 ) , ctx. cancelled ( ) ) . await ;
916
+ if res. is_err ( ) {
917
+ panic ! ( "Activity must be cancelled!!!!" ) ;
918
+ }
919
+ Result :: < ActExitValue < ( ) > , _ > :: Err ( ActivityCancelledError :: default ( ) . into ( ) )
920
+ } ) ;
930
921
worker
931
922
. submit_wf (
932
923
wf_id. to_owned ( ) ,
@@ -980,7 +971,7 @@ async fn resolved_las_not_recorded_if_wft_fails_many_times() {
980
971
) ;
981
972
worker. register_activity (
982
973
"echo" ,
983
- move |_: ActContext , _: String | async move { Ok ( ( ) ) } ,
974
+ ActivityFunction :: from ( move |_: ActContext , _: String | async move { Ok ( ( ) ) } ) ,
984
975
) ;
985
976
worker
986
977
. submit_wf (
@@ -1039,9 +1030,12 @@ async fn local_act_records_nonfirst_attempts_ok() {
1039
1030
Ok ( ( ) . into ( ) )
1040
1031
} ,
1041
1032
) ;
1042
- worker. register_activity ( "echo" , move |_ctx : ActContext , _: String | async move {
1043
- Result :: < ( ) , _ > :: Err ( anyhow ! ( "I fail" ) )
1044
- } ) ;
1033
+ worker. register_activity (
1034
+ "echo" ,
1035
+ ActivityFunction :: from ( move |_ctx : ActContext , _: String | async move {
1036
+ Result :: < ( ) , _ > :: Err ( anyhow ! ( "I fail" ) )
1037
+ } ) ,
1038
+ ) ;
1045
1039
worker
1046
1040
. submit_wf (
1047
1041
wf_id. to_owned ( ) ,
0 commit comments