Skip to content

Commit a246fb8

Browse files
committed
restructure tests
1 parent 9137f03 commit a246fb8

File tree

1 file changed

+36
-32
lines changed

1 file changed

+36
-32
lines changed

src/Insurello.AsyncExtra.Tests/AsyncExtraTests.fs

Lines changed: 36 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -46,48 +46,52 @@ let tests =
4646
let taskTests =
4747
testList
4848
"Task tests"
49-
[ testAsync "should convert from Task<string> to AsyncResult" {
50-
let input =
51-
Async.singleton "Hello" |> Async.StartAsTask
49+
[ testList
50+
"fromUnitTask"
51+
[ testAsync "should convert from Task to AsyncResult" {
52+
let source = new CancellationTokenSource()
53+
let input: Task = Task.Delay(0, source.Token)
5254

53-
let expectedValue = Ok "Hello"
55+
let expectedValue = Ok()
5456

55-
let! actual = AsyncResult.fromTask input
57+
let! actual = AsyncResult.fromUnitTask input
5658

57-
Expect.equal actual expectedValue "Should be equal"
58-
}
59-
testAsync "fromTask failing Task should result in Error" {
59+
Expect.equal actual expectedValue "Should be equal"
60+
}
61+
testAsync "failing Task should result in Error" {
62+
let source = new CancellationTokenSource()
63+
let input: Task = Task.Delay(1000, source.Token)
64+
let expectedValue = Error "A task was canceled."
6065

61-
let input =
62-
Async.singleton "Hello"
63-
|> Async.map (fun _ -> failwith "boom")
64-
|> Async.StartAsTask
66+
source.Cancel()
6567

66-
let expectedValue =
67-
Error "One or more errors occurred. (boom)"
68+
let! actual = AsyncResult.fromUnitTask input
6869

69-
let! actual = AsyncResult.fromTask input
70+
Expect.equal actual expectedValue "Should be equal"
71+
} ]
72+
testList
73+
"fromTask"
74+
[ testAsync "should convert from Task<string> to AsyncResult" {
75+
let input =
76+
Async.singleton "Hello" |> Async.StartAsTask
7077

71-
Expect.equal actual expectedValue "Should be equal"
72-
}
73-
testAsync "should convert from Task to AsyncResult" {
74-
let source = new CancellationTokenSource()
75-
let input: Task = Task.Delay(0, source.Token)
78+
let expectedValue = Ok "Hello"
7679

77-
let expectedValue = Ok()
80+
let! actual = AsyncResult.fromTask input
7881

79-
let! actual = AsyncResult.fromUnitTask input
82+
Expect.equal actual expectedValue "Should be equal"
83+
}
84+
testAsync "fromTask failing Task should result in Error" {
8085

81-
Expect.equal actual expectedValue "Should be equal"
82-
}
83-
testAsync "failing Task should result in Error" {
84-
let source = new CancellationTokenSource()
85-
let input: Task = Task.Delay(1000, source.Token)
86-
let expectedValue = Error "A task was canceled."
86+
let input =
87+
Async.singleton "Hello"
88+
|> Async.map (fun _ -> failwith "boom")
89+
|> Async.StartAsTask
8790

88-
source.Cancel()
91+
let expectedValue =
92+
Error "One or more errors occurred. (boom)"
8993

90-
let! actual = AsyncResult.fromUnitTask input
94+
let! actual = AsyncResult.fromTask input
9195

92-
Expect.equal actual expectedValue "Should be equal"
93-
} ]
96+
Expect.equal actual expectedValue "Should be equal"
97+
} ] ]

0 commit comments

Comments
 (0)