Skip to content

Commit 39801f1

Browse files
remove useless tests
1 parent 116d6c7 commit 39801f1

3 files changed

Lines changed: 35 additions & 49 deletions

File tree

crates/sdk/examples/activity_heartbeating/workflows.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use std::time::Duration;
33
use temporalio_common::protos::coresdk::AsJsonPayloadExt;
44
use temporalio_macros::{activities, workflow, workflow_methods};
55
use temporalio_sdk::{
6-
ActivityCloseTimeouts, ActivityOptions, WorkflowContext, WorkflowResult,
6+
ActivityOptions, WorkflowContext, WorkflowResult,
77
activities::{ActivityContext, ActivityError},
88
};
99

@@ -48,11 +48,9 @@ impl HeartbeatingWorkflow {
4848
.start_activity(
4949
HeartbeatingActivities::long_running_activity,
5050
total_steps,
51-
ActivityOptions::with_close_timeout(ActivityCloseTimeouts::StartToClose(
52-
Duration::from_secs(30),
53-
))
54-
.heartbeat_timeout(Duration::from_secs(5))
55-
.build(),
51+
ActivityOptions::with_start_to_close_timeout(Duration::from_secs(30))
52+
.heartbeat_timeout(Duration::from_secs(5))
53+
.build(),
5654
)
5755
.await
5856
.map_err(|e| anyhow::anyhow!("{e}"))?;

crates/sdk/examples/cancellation/workflows.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
use std::time::Duration;
33
use temporalio_macros::{activities, workflow, workflow_methods};
44
use temporalio_sdk::{
5-
ActivityCloseTimeouts, ActivityOptions, CancellableFuture, WorkflowContext, WorkflowResult,
5+
ActivityOptions, CancellableFuture, WorkflowContext, WorkflowResult,
66
activities::{ActivityContext, ActivityError},
77
};
88

@@ -31,11 +31,9 @@ impl CancellationActivities {
3131
}
3232

3333
fn activity_opts() -> ActivityOptions {
34-
ActivityOptions::with_close_timeout(ActivityCloseTimeouts::StartToClose(Duration::from_secs(
35-
300,
36-
)))
37-
.heartbeat_timeout(Duration::from_secs(5))
38-
.build()
34+
ActivityOptions::with_start_to_close_timeout(Duration::from_secs(300))
35+
.heartbeat_timeout(Duration::from_secs(5))
36+
.build()
3937
}
4038

4139
#[workflow]

crates/sdk/src/workflow_context/options.rs

Lines changed: 27 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ pub(crate) trait IntoWorkflowCommand {
3131
}
3232

3333
/// Options for scheduling an activity
34-
#[derive(Debug, bon::Builder)]
34+
#[derive(Debug, bon::Builder, Clone)]
3535
#[non_exhaustive]
3636
#[builder(start_fn = with_close_timeout, on(String, into), state_mod(vis = "pub"))]
3737
pub struct ActivityOptions {
@@ -75,14 +75,28 @@ pub struct ActivityOptions {
7575
}
7676

7777
impl ActivityOptions {
78+
/// Returns a builder with a [`ActivityCloseTimeouts::StartToClose`] set.
79+
pub fn with_start_to_close_timeout(duration: Duration) -> ActivityOptionsBuilder {
80+
Self::with_close_timeout(ActivityCloseTimeouts::StartToClose(duration))
81+
}
82+
83+
/// Returns a builder with a [`ActivityCloseTimeouts::ScheduleToClose`] set.
84+
pub fn with_schedule_to_close_timeout(duration: Duration) -> ActivityOptionsBuilder {
85+
Self::with_close_timeout(ActivityCloseTimeouts::ScheduleToClose(duration))
86+
}
87+
7888
/// Creates activity options with only `start_to_close_timeout` set.
89+
///
90+
/// If you need additional fields set, use [`Self::with_start_to_close_timeout`].
7991
pub fn start_to_close_timeout(duration: Duration) -> Self {
80-
Self::with_close_timeout(ActivityCloseTimeouts::StartToClose(duration)).build()
92+
Self::with_start_to_close_timeout(duration).build()
8193
}
8294

8395
/// Creates activity options with only `schedule_to_close_timeout` set.
96+
///
97+
/// If you need additional fields set, use [`Self::with_schedule_to_close_timeout`].
8498
pub fn schedule_to_close_timeout(duration: Duration) -> Self {
85-
Self::with_close_timeout(ActivityCloseTimeouts::ScheduleToClose(duration)).build()
99+
Self::with_schedule_to_close_timeout(duration).build()
86100
}
87101

88102
pub(crate) fn into_command(
@@ -569,53 +583,29 @@ mod tests {
569583
use temporalio_common::protos::coresdk::workflow_commands::workflow_command::Variant;
570584

571585
#[test]
572-
fn activity_options_builder_defaults_match_start_to_close_constructor() {
573-
let built = ActivityOptions::with_close_timeout(ActivityCloseTimeouts::StartToClose(
574-
Duration::from_secs(5),
575-
))
576-
.build();
577-
let constructed = ActivityOptions::start_to_close_timeout(Duration::from_secs(5));
578-
579-
assert_eq!(built.close_timeout, constructed.close_timeout);
580-
assert_eq!(built.activity_id, constructed.activity_id);
581-
assert_eq!(built.task_queue, constructed.task_queue);
582-
assert_eq!(
583-
built.schedule_to_start_timeout,
584-
constructed.schedule_to_start_timeout
585-
);
586-
assert_eq!(built.heartbeat_timeout, constructed.heartbeat_timeout);
587-
assert_eq!(built.cancellation_type, constructed.cancellation_type);
588-
assert_eq!(built.retry_policy, constructed.retry_policy);
589-
assert_eq!(built.summary, constructed.summary);
590-
assert_eq!(built.priority, constructed.priority);
591-
assert_eq!(
592-
built.do_not_eagerly_execute,
593-
constructed.do_not_eagerly_execute
594-
);
595-
}
596-
597-
#[test]
598-
fn activity_options_start_to_close_timeout_constructor_sets_only_that_timeout() {
599-
let opts = ActivityOptions::start_to_close_timeout(Duration::from_secs(5));
586+
fn activity_options_with_start_to_close_timeout_wrapper_supports_builder_chaining() {
587+
let opts = ActivityOptions::with_start_to_close_timeout(Duration::from_secs(5))
588+
.heartbeat_timeout(Duration::from_secs(2))
589+
.build();
600590

601591
assert_eq!(
602592
opts.close_timeout,
603593
ActivityCloseTimeouts::StartToClose(Duration::from_secs(5))
604594
);
605-
assert_eq!(opts.schedule_to_start_timeout, None);
606-
assert_eq!(opts.heartbeat_timeout, None);
595+
assert_eq!(opts.heartbeat_timeout, Some(Duration::from_secs(2)));
607596
}
608597

609598
#[test]
610-
fn activity_options_schedule_to_close_timeout_constructor_sets_only_that_timeout() {
611-
let opts = ActivityOptions::schedule_to_close_timeout(Duration::from_secs(5));
599+
fn activity_options_with_schedule_to_close_timeout_wrapper_supports_builder_chaining() {
600+
let opts = ActivityOptions::with_schedule_to_close_timeout(Duration::from_secs(5))
601+
.heartbeat_timeout(Duration::from_secs(2))
602+
.build();
612603

613604
assert_eq!(
614605
opts.close_timeout,
615606
ActivityCloseTimeouts::ScheduleToClose(Duration::from_secs(5))
616607
);
617-
assert_eq!(opts.schedule_to_start_timeout, None);
618-
assert_eq!(opts.heartbeat_timeout, None);
608+
assert_eq!(opts.heartbeat_timeout, Some(Duration::from_secs(2)));
619609
}
620610

621611
#[test]

0 commit comments

Comments
 (0)