34 lines
878 B
Ada
34 lines
878 B
Ada
with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO;
|
|
with Bit_Streams; use Bit_Streams;
|
|
|
|
procedure Test_Bit_Streams is
|
|
File : File_Type;
|
|
ABACUS : Bit_Array :=
|
|
( 1,0,0,0,0,0,1, -- A, big endian
|
|
1,0,0,0,0,1,0, -- B
|
|
1,0,0,0,0,0,1, -- A
|
|
1,0,0,0,0,1,1, -- C
|
|
1,0,1,0,1,0,1, -- U
|
|
1,0,1,0,0,1,1 -- S
|
|
);
|
|
Data : Bit_Array (ABACUS'Range);
|
|
begin
|
|
Create (File, Out_File, "abacus.dat");
|
|
declare
|
|
Bits : Bit_Stream (Stream (File));
|
|
begin
|
|
Write (Bits, ABACUS);
|
|
end;
|
|
Close (File);
|
|
Open (File, In_File, "abacus.dat");
|
|
declare
|
|
Bits : Bit_Stream (Stream (File));
|
|
begin
|
|
Read (Bits, Data);
|
|
end;
|
|
Close (File);
|
|
if Data /= ABACUS then
|
|
raise Data_Error;
|
|
end if;
|
|
end Test_Bit_Streams;
|