You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: tests/FSharpPlus.Tests/General.fs
-42
Original file line number
Diff line number
Diff line change
@@ -915,48 +915,6 @@ module Foldable =
915
915
areEqual sb' None
916
916
()
917
917
918
-
moduleIndexable =
919
-
[<Test>]
920
-
lettestCompileAndExecuteItem()=
921
-
922
-
leta= Map.ofSeq [1,"one";2,"two"]
923
-
let_= item 1 a
924
-
925
-
letb= dict [1,"one";2,"two"]
926
-
let_= item 1 b
927
-
928
-
letc="two"
929
-
let_= item 1 c
930
-
931
-
letd= System.Text.StringBuilder "one"
932
-
let_= item 1 d
933
-
934
-
lete= array2D [[1;2];[3;4];[5;6]]
935
-
let_= item (1,1) e
936
-
937
-
letf=[1,"one";2,"two"]
938
-
let_= item 1 f
939
-
940
-
letg=[|1,"one";2,"two"|]
941
-
let_= item 1 g
942
-
943
-
leth= ResizeArray [1,"one";2,"two"]
944
-
let_= item 1 h
945
-
946
-
leti= Array3D.create 3220
947
-
let_= item (1,1,1) i
948
-
949
-
letj= Array4D.create 32230
950
-
let_= item (1,1,1,1) j
951
-
952
-
letk= NonEmptyMap.Create (("a",1),("b",2))
953
-
let_= item "b" k
954
-
955
-
// This doesn't intentionally compile: seq is not Indexable. Not all foldables are Indexable, for example a Set is foldable but not Indexable. For seq use nth instead.
// This doesn't intentionally compile: seq is not Indexable. Not all foldables are Indexable, for example a Set is foldable but not Indexable. For seq use nth instead.
53
+
// let f = seq [1, "one"; 2, "two"]
54
+
// let _ = item 1 f
55
+
56
+
()
57
+
58
+
[<Test>]
59
+
letfoldIndexed()=
60
+
Assert.AreEqual (123, foldi (fun a b c -> a + b + c)0(seq [20;40;60]))
61
+
Assert.AreEqual (123, foldi (fun a b c -> a + b + c)0[20;40;60])
62
+
63
+
64
+
[<Test>]
65
+
lettraverseIndexed()=
66
+
letm1= Map.ofList [(1,[1;1;1]);(2,[2;2;2])]
67
+
letr1= m1 |> traversei (fun _ _ -> None)
68
+
letr2= m1 |> traversei (fun i v ->if List.forall ((=) i) v then Some (i :: v)else None)
0 commit comments