From 891725157ecc63fcacc7b2c5cb2edb204adc7569 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Wed, 25 Jun 2014 01:27:17 +0200 Subject: [PATCH] fix bug in CCFqueue --- core/CCFQueue.ml | 4 ++-- tests/test_fQueue.ml | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/core/CCFQueue.ml b/core/CCFQueue.ml index 8c2cc3a1..80aea967 100644 --- a/core/CCFQueue.ml +++ b/core/CCFQueue.ml @@ -172,11 +172,11 @@ let last q = let last_exn q = snd (take_back_exn q) let init q = - try snd (take_front_exn q) + try fst (take_back_exn q) with Empty -> q let tail q = - try fst (take_back_exn q) + try snd (take_front_exn q) with Empty -> q let add_seq_front seq q = diff --git a/tests/test_fQueue.ml b/tests/test_fQueue.ml index c823488b..33082e5e 100644 --- a/tests/test_fQueue.ml +++ b/tests/test_fQueue.ml @@ -8,12 +8,14 @@ let test_empty () = let q = FQueue.empty in OUnit.assert_bool "is_empty" (FQueue.is_empty q) +let pp_ilist = CCPrint.(to_string (list int)) + let test_push () = let q = List.fold_left FQueue.snoc FQueue.empty [1;2;3;4;5] in let q = FQueue.tail q in let q = List.fold_left FQueue.snoc q [6;7;8] in let l = Sequence.to_list (FQueue.to_seq q) in - OUnit.assert_equal [2;3;4;5;6;7;8] l + OUnit.assert_equal ~printer:pp_ilist [2;3;4;5;6;7;8] l let test_pop () = let q = FQueue.of_list [1;2;3;4] in @@ -30,7 +32,7 @@ let test_append () = let q2 = FQueue.of_seq (Sequence.of_list [5;6;7;8]) in let q = FQueue.append q1 q2 in let l = Sequence.to_list (FQueue.to_seq q) in - OUnit.assert_equal [1;2;3;4;5;6;7;8] l + OUnit.assert_equal ~printer:pp_ilist [1;2;3;4;5;6;7;8] l let test_fold () = let q = FQueue.of_seq (Sequence.of_list [1;2;3;4]) in