Fix CI
This commit is contained in:
1 parent
86787b3a0d
commit
6f7a58e4c5
10 files changed
+53
-57
No files matched your search
+21
-21
@@ -12,7 +12,7 @@ pub fn bench_dag_execution(c: &mut Criterion) {
|
|||||||
rt.block_on(async {
|
rt.block_on(async {
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..10 {
|
for i in 0..10 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
.await
|
.await
|
||||||
@@ -26,7 +26,7 @@ pub fn bench_dag_execution(c: &mut Criterion) {
|
|||||||
rt.block_on(async {
|
rt.block_on(async {
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..100 {
|
for i in 0..100 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
.await
|
.await
|
||||||
@@ -51,61 +51,61 @@ pub fn bench_dag_execution(c: &mut Criterion) {
|
|||||||
|
|
||||||
let t0 = dag.add_task(Value(0));
|
let t0 = dag.add_task(Value(0));
|
||||||
let t1 = dag
|
let t1 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t0);
|
.depends_on(t0);
|
||||||
let t2 = dag
|
let t2 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t1);
|
.depends_on(t1);
|
||||||
let t3 = dag
|
let t3 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t2);
|
.depends_on(t2);
|
||||||
let t4 = dag
|
let t4 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t3);
|
.depends_on(t3);
|
||||||
let t5 = dag
|
let t5 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t4);
|
.depends_on(t4);
|
||||||
let t6 = dag
|
let t6 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t5);
|
.depends_on(t5);
|
||||||
let t7 = dag
|
let t7 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t6);
|
.depends_on(t6);
|
||||||
let t8 = dag
|
let t8 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t7);
|
.depends_on(t7);
|
||||||
let t9 = dag
|
let t9 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t8);
|
.depends_on(t8);
|
||||||
let t10 = dag
|
let t10 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t9);
|
.depends_on(t9);
|
||||||
let t11 = dag
|
let t11 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t10);
|
.depends_on(t10);
|
||||||
let t12 = dag
|
let t12 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t11);
|
.depends_on(t11);
|
||||||
let t13 = dag
|
let t13 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t12);
|
.depends_on(t12);
|
||||||
let t14 = dag
|
let t14 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t13);
|
.depends_on(t13);
|
||||||
let t15 = dag
|
let t15 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t14);
|
.depends_on(t14);
|
||||||
let t16 = dag
|
let t16 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t15);
|
.depends_on(t15);
|
||||||
let t17 = dag
|
let t17 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t16);
|
.depends_on(t16);
|
||||||
let t18 = dag
|
let t18 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t17);
|
.depends_on(t17);
|
||||||
let _t19 = dag
|
let _t19 = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(t18);
|
.depends_on(t18);
|
||||||
|
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ pub fn bench_dag_scaling(c: &mut Criterion) {
|
|||||||
rt.block_on(async {
|
rt.block_on(async {
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..size {
|
for i in 0..size {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
.await
|
.await
|
||||||
|
|||||||
@@ -18,14 +18,14 @@ pub fn bench_deep_chain(c: &mut Criterion) {
|
|||||||
|
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
|
|
||||||
let first: TaskHandle<_> = dag.add_task(task_fn::<(), _, _>(|_: ()| { 0 })).into();
|
let first: TaskHandle<_> = dag.add_task(task_fn::<(), _, _>(|_: ()| 0)).into();
|
||||||
let mut prev = dag
|
let mut prev = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(first);
|
.depends_on(first);
|
||||||
|
|
||||||
for i in 2..100 {
|
for i in 2..100 {
|
||||||
prev = dag
|
prev = dag
|
||||||
.add_task(task_fn::<i32, _, _>(move |&x: &i32| { x + i }))
|
.add_task(task_fn::<i32, _, _>(move |&x: &i32| x + i))
|
||||||
.depends_on(prev);
|
.depends_on(prev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,19 +25,19 @@ pub fn bench_etl_pipeline(c: &mut Criterion) {
|
|||||||
// Transform each source
|
// Transform each source
|
||||||
let transform1 = dag
|
let transform1 = dag
|
||||||
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
||||||
data.into_iter().map(|x| x * 2).collect::<Vec<_>>()
|
data.iter().map(|x| x * 2).collect::<Vec<_>>()
|
||||||
}))
|
}))
|
||||||
.depends_on(source1);
|
.depends_on(source1);
|
||||||
|
|
||||||
let transform2 = dag
|
let transform2 = dag
|
||||||
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
||||||
data.into_iter().map(|x| x * 2).collect::<Vec<_>>()
|
data.iter().map(|x| x * 2).collect::<Vec<_>>()
|
||||||
}))
|
}))
|
||||||
.depends_on(source2);
|
.depends_on(source2);
|
||||||
|
|
||||||
let transform3 = dag
|
let transform3 = dag
|
||||||
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
||||||
data.into_iter().map(|x| x * 2).collect::<Vec<_>>()
|
data.iter().map(|x| x * 2).collect::<Vec<_>>()
|
||||||
}))
|
}))
|
||||||
.depends_on(source3);
|
.depends_on(source3);
|
||||||
|
|
||||||
@@ -66,7 +66,7 @@ pub fn bench_etl_pipeline(c: &mut Criterion) {
|
|||||||
// Load (compute sum)
|
// Load (compute sum)
|
||||||
let load = dag
|
let load = dag
|
||||||
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
.add_task(task_fn::<Vec<_>, _, _>(|data: &Vec<i32>| {
|
||||||
data.into_iter().sum::<i32>()
|
data.iter().sum::<i32>()
|
||||||
}))
|
}))
|
||||||
.depends_on(validate);
|
.depends_on(validate);
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ pub fn bench_large_scale(c: &mut Criterion) {
|
|||||||
|
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..10_000 {
|
for i in 0..10_000 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i * 2 }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i * 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
|
|||||||
@@ -17,18 +17,18 @@ pub fn bench_linear_pipeline(c: &mut Criterion) {
|
|||||||
|
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
|
|
||||||
let a = dag.add_task(task_fn::<(), _, _>(|_: ()| { 1 }));
|
let a = dag.add_task(task_fn::<(), _, _>(|_: ()| 1));
|
||||||
let b = dag
|
let b = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x + 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x + 1))
|
||||||
.depends_on(a);
|
.depends_on(a);
|
||||||
let c = dag
|
let c = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x * 2 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x * 2))
|
||||||
.depends_on(b);
|
.depends_on(b);
|
||||||
let d = dag
|
let d = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x - 1 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x - 1))
|
||||||
.depends_on(c);
|
.depends_on(c);
|
||||||
let e = dag
|
let e = dag
|
||||||
.add_task(task_fn::<i32, _, _>(|&x: &i32| { x * 3 }))
|
.add_task(task_fn::<i32, _, _>(|&x: &i32| x * 3))
|
||||||
.depends_on(d);
|
.depends_on(d);
|
||||||
|
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
|
|||||||
@@ -17,11 +17,11 @@ pub fn bench_wide_fanout(c: &mut Criterion) {
|
|||||||
use dagx::{task_fn, DagRunner};
|
use dagx::{task_fn, DagRunner};
|
||||||
|
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
let source: TaskHandle<_> = dag.add_task(task_fn::<(), _, _>(|_: ()| { 42 })).into();
|
let source: TaskHandle<_> = dag.add_task(task_fn::<(), _, _>(|_: ()| 42)).into();
|
||||||
|
|
||||||
// Create 100 tasks that all depend on source
|
// Create 100 tasks that all depend on source
|
||||||
for i in 0..100 {
|
for i in 0..100 {
|
||||||
dag.add_task(task_fn::<i32, _, _>(move |&x: &i32| { x + i }))
|
dag.add_task(task_fn::<i32, _, _>(move |&x: &i32| x + i))
|
||||||
.depends_on(source);
|
.depends_on(source);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ pub fn bench_10k_breakdown(c: &mut Criterion) {
|
|||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..10_000 {
|
for i in 0..10_000 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -25,7 +25,7 @@ pub fn bench_10k_breakdown(c: &mut Criterion) {
|
|||||||
rt.block_on(async {
|
rt.block_on(async {
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..10_000 {
|
for i in 0..10_000 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
dag.run(|fut| tokio::spawn(fut).map(Result::unwrap))
|
||||||
.await
|
.await
|
||||||
@@ -39,7 +39,7 @@ pub fn bench_10k_breakdown(c: &mut Criterion) {
|
|||||||
// Pre-build the DAG outside the measurement
|
// Pre-build the DAG outside the measurement
|
||||||
let dag = DagRunner::new();
|
let dag = DagRunner::new();
|
||||||
for i in 0..10_000 {
|
for i in 0..10_000 {
|
||||||
dag.add_task(task_fn::<(), _, _>(move |_: ()| { i }));
|
dag.add_task(task_fn::<(), _, _>(move |_: ()| i));
|
||||||
}
|
}
|
||||||
|
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
|
|||||||
@@ -113,11 +113,10 @@ async fn main() {
|
|||||||
// Step 7: Retrieve results
|
// Step 7: Retrieve results
|
||||||
//
|
//
|
||||||
// Use .get() with a TaskHandle to retrieve the output.
|
// Use .get() with a TaskHandle to retrieve the output.
|
||||||
// Results are cloned, so you can retrieve them multiple times.
|
// Results are not cloned, so you can only retrieve them once.
|
||||||
println!("\nResult: {}", dag.get(sum).unwrap());
|
println!("\nResult: {}", dag.get(sum).unwrap());
|
||||||
|
|
||||||
// Note: You can also retrieve intermediate results
|
// Note: You can also retrieve intermediate results
|
||||||
assert_eq!(dag.get(x).unwrap(), 2);
|
assert_eq!(dag.get(x).unwrap(), 2);
|
||||||
assert_eq!(dag.get(y).unwrap(), 3);
|
assert_eq!(dag.get(y).unwrap(), 3);
|
||||||
assert_eq!(dag.get(sum).unwrap(), 5);
|
|
||||||
}
|
}
|
||||||
+12
-15
@@ -17,7 +17,7 @@ async fn test_task_fn_creation_and_execution() {
|
|||||||
// Test the Task trait implementation
|
// Test the Task trait implementation
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(42) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(42) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, 84);
|
assert_eq!(result, 84);
|
||||||
@@ -30,7 +30,7 @@ async fn test_task_fn_with_unit_input() {
|
|||||||
|
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(()) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(()) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, 100);
|
assert_eq!(result, 100);
|
||||||
@@ -43,7 +43,7 @@ async fn test_task_fn_with_tuple_input() {
|
|||||||
|
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![
|
[
|
||||||
Arc::new(10) as Arc<dyn Any + Send + Sync + 'static>,
|
Arc::new(10) as Arc<dyn Any + Send + Sync + 'static>,
|
||||||
Arc::new(20) as Arc<dyn Any + Send + Sync + 'static>,
|
Arc::new(20) as Arc<dyn Any + Send + Sync + 'static>,
|
||||||
]
|
]
|
||||||
@@ -56,15 +56,12 @@ async fn test_task_fn_with_tuple_input() {
|
|||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
async fn test_task_fn_with_string_input() {
|
async fn test_task_fn_with_string_input() {
|
||||||
// Test task_fn with String input
|
// Test task_fn with String input
|
||||||
let task = task_fn::<String, _, _>(|input: &String| {
|
let task = task_fn::<String, _, _>(|input: &String| input.len());
|
||||||
let len = input.len();
|
|
||||||
len
|
|
||||||
});
|
|
||||||
|
|
||||||
let test_string = String::from("hello");
|
let test_string = String::from("hello");
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(test_string) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(test_string) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, 5);
|
assert_eq!(result, 5);
|
||||||
@@ -77,7 +74,7 @@ async fn test_task_fn_with_complex_output() {
|
|||||||
|
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, vec![5, 10, 15]);
|
assert_eq!(result, vec![5, 10, 15]);
|
||||||
@@ -91,7 +88,7 @@ async fn test_task_fn_stateful_closure() {
|
|||||||
|
|
||||||
let result = task
|
let result = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(7) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(7) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, 21);
|
assert_eq!(result, 21);
|
||||||
@@ -124,7 +121,7 @@ async fn test_custom_task_implementation() {
|
|||||||
|
|
||||||
let result1 = task
|
let result1 = task
|
||||||
.run(TaskInput::new(
|
.run(TaskInput::new(
|
||||||
vec![Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
[Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter(),
|
||||||
))
|
))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result1, 15);
|
assert_eq!(result1, 15);
|
||||||
@@ -160,7 +157,7 @@ async fn test_task_fn_single_call() {
|
|||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
task.run(TaskInput::new(
|
task.run(TaskInput::new(
|
||||||
vec![Arc::new(1) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
[Arc::new(1) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
||||||
))
|
))
|
||||||
.await,
|
.await,
|
||||||
2
|
2
|
||||||
@@ -180,7 +177,7 @@ async fn test_task_fn_with_result_type() {
|
|||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
task.run(TaskInput::new(
|
task.run(TaskInput::new(
|
||||||
vec![Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
[Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
||||||
))
|
))
|
||||||
.await,
|
.await,
|
||||||
Ok(10)
|
Ok(10)
|
||||||
@@ -194,7 +191,7 @@ async fn test_task_fn_with_option_type() {
|
|||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
task.run(TaskInput::new(
|
task.run(TaskInput::new(
|
||||||
vec![Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
[Arc::new(5) as Arc<dyn Any + Send + Sync + 'static>].iter()
|
||||||
))
|
))
|
||||||
.await,
|
.await,
|
||||||
Some(10)
|
Some(10)
|
||||||
@@ -210,7 +207,7 @@ async fn test_task_fn_explicit_trait_call() {
|
|||||||
// Explicitly call the Task trait's run method
|
// Explicitly call the Task trait's run method
|
||||||
let result = Task::run(
|
let result = Task::run(
|
||||||
task,
|
task,
|
||||||
TaskInput::new(vec![Arc::new(10) as Arc<dyn Any + Send + Sync + 'static>].iter()),
|
TaskInput::new([Arc::new(10) as Arc<dyn Any + Send + Sync + 'static>].iter()),
|
||||||
)
|
)
|
||||||
.await;
|
.await;
|
||||||
assert_eq!(result, 30);
|
assert_eq!(result, 30);
|
||||||
|
|||||||
Reference in new issue
Block a user