aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/unit/evaluators/FOL.ml13
-rw-r--r--test/unit/kernel/EphemeralRelation.ml10
-rw-r--r--test/unit/kernel/SubstantialRelation.ml8
3 files changed, 11 insertions, 20 deletions
diff --git a/test/unit/evaluators/FOL.ml b/test/unit/evaluators/FOL.ml
index 3254258..1782b2e 100644
--- a/test/unit/evaluators/FOL.ml
+++ b/test/unit/evaluators/FOL.ml
@@ -31,11 +31,7 @@ module Make (S : Abstract.Storage.STORAGE) (C : Helpers.Storage.CONFIGURATOR) =
let drain result =
let open Utilities.Result in
- let* enumerable = Protocols.Enumerable.require result in
- let* cursor = Protocols.Enumerable.enumerate enumerable in
- let* scan = Protocols.Cursor.require cursor in
- let* tuples = Protocols.Cursor.drain scan () in
- Protocols.Handle.release cursor;
+ let* tuples = Protocols.Enumerable.scan result (fun scan -> Protocols.Cursor.drain scan ()) in
Protocols.Handle.release result;
Ok (BatFingerTree.to_list tuples)
@@ -229,11 +225,8 @@ module Make (S : Abstract.Storage.STORAGE) (C : Helpers.Storage.CONFIGURATOR) =
begin
let open Utilities.Result in
let* result = values (counter ~produced ~closed ()) in
- let* enumerable = Protocols.Enumerable.require result in
- let* cursor = Protocols.Enumerable.enumerate enumerable in
- let* scan = Protocols.Cursor.require cursor in
- let* first = Protocols.Cursor.next scan in
- Protocols.Handle.release cursor; Protocols.Handle.release result; Ok first
+ let* first = Protocols.Enumerable.scan result Protocols.Cursor.next in
+ Protocols.Handle.release result; Ok first
end
|> Helpers.condition_as_failure
in
diff --git a/test/unit/kernel/EphemeralRelation.ml b/test/unit/kernel/EphemeralRelation.ml
index c9742f0..1e9aa2f 100644
--- a/test/unit/kernel/EphemeralRelation.ml
+++ b/test/unit/kernel/EphemeralRelation.ml
@@ -40,11 +40,11 @@ let enumerates_every_member () =
let enumerated =
begin
let open Rnt.Utilities.Result in
- let* enumerable = Protocols.Enumerable.require (over [member 1; member 2; member 3]) in
- let* cursor = Protocols.Enumerable.enumerate enumerable in
- let* scan = Protocols.Cursor.require cursor in
- let* tuples = Protocols.Cursor.drain scan () in
- Protocols.Handle.release cursor;
+ let* tuples =
+ Protocols.Enumerable.scan
+ (over [member 1; member 2; member 3])
+ (fun scan -> Protocols.Cursor.drain scan ())
+ in
Ok (values tuples)
end
|> Helpers.condition_as_failure
diff --git a/test/unit/kernel/SubstantialRelation.ml b/test/unit/kernel/SubstantialRelation.ml
index b9f87bf..6000e52 100644
--- a/test/unit/kernel/SubstantialRelation.ml
+++ b/test/unit/kernel/SubstantialRelation.ml
@@ -19,11 +19,9 @@ module Make (S : Abstract.Storage.STORAGE) (C : Helpers.Storage.CONFIGURATOR) =
let enumerate relation =
let open Utilities.Result in
- let* enumerable = Protocols.Enumerable.require relation in
- let* cursor = Protocols.Enumerable.enumerate enumerable in
- let* scan = Protocols.Cursor.require cursor in
- let* enumerated = Protocols.Cursor.drain scan () in
- Protocols.Handle.release cursor;
+ let* enumerated =
+ Protocols.Enumerable.scan relation (fun scan -> Protocols.Cursor.drain scan ())
+ in
Ok (BatFingerTree.to_list enumerated)
let contain_and_enumerate conn =