Random.int64 (Int64.sub (Int64.shift_left 1L bitlen) 1L))
(range 0 (len-1)) in
- let bits = Bitmatch.Buffer.create () in
+ let bits = Bitstring.Buffer.create () in
List.iter (fun i ->
- Bitmatch.construct_int64_be_unsigned bits i bitlen
+ Bitstring.construct_int64_be_unsigned bits i bitlen
(Failure "constructing string"))
expected;
- let bits = Bitmatch.Buffer.contents bits in
+ let bits = Bitstring.Buffer.contents bits in
(* Now read the bitstring as integers.
* In each case check the result against what we generated ('expected').
let actual =
let rec loop bits =
bitmatch bits with
- | { i : bitlen; rest : -1 : bitstring } ->
- if Bitmatch.bitstring_length rest > 0 then
- i :: loop rest
- else
- [i]
+ | { i : bitlen; rest : -1 : bitstring }
+ when Bitstring.bitstring_length rest = 0 -> [i]
+ | { i : bitlen; rest : -1 : bitstring } -> i :: loop rest
| { _ } ->
failwith (sprintf "loop failed with len = %d, bitlen = %d"
len bitlen)
in
loop bits in
if actual <> expected then
- failwith (sprintf "match bits: failed on 1 bit test, len = %d" len)
+ failwith (sprintf "match ints: failed on test, len = %d, bitlen = %d"
+ len bitlen)
done
done