+++ /dev/null
-(* Test the various functions to load bitstrings from files.
- * $Id$
- *)
-
-open Printf
-open Bitstring
-
-let () =
- let bits1 =
- let b1 = make_bitstring 800 '\x5a' in
- let b2 = make_bitstring 400 '\x88' in (
- BITSTRING {
- b1 : 800 : bitstring;
- b2 : 400 : bitstring
- }
- ) in
- let bits2 = (
- let b = make_bitstring 800 '\xaa' in
- BITSTRING {
- b : 800 : bitstring
- }
- ) in
- let bits = concat [bits1; bits2] in
- let filename, chan =
- Filename.open_temp_file ~mode:[Open_binary] "bitstring_test" ".tmp" in
- bitstring_to_chan bits chan;
- close_out chan;
-
- let bits' = bitstring_of_file filename in
- assert (equals bits bits');
-
- let chan = open_in filename in
- let bits' = bitstring_of_chan chan in
- close_in chan;
- assert (equals bits bits');
-
- let chan = open_in filename in
- let bits' = bitstring_of_chan_max chan 150 in
- assert (equals bits1 bits');
- let bits' = bitstring_of_chan_max chan 100 in
- assert (equals bits2 bits');
- close_in chan;
-
- let fd = Unix.openfile filename [Unix.O_RDONLY] 0 in
- let bits' = bitstring_of_file_descr fd in
- Unix.close fd;
- assert (equals bits bits');
-
- let fd = Unix.openfile filename [Unix.O_RDONLY] 0 in
- let bits' = bitstring_of_file_descr_max fd 150 in
- assert (equals bits1 bits');
- let bits' = bitstring_of_file_descr_max fd 100 in
- assert (equals bits2 bits');
- Unix.close fd;
-
- Unix.unlink filename