5 procedure Assert
(Expected
, Actual
: String) is
7 if Expected
/= Actual
then
13 type Test_Enum
is (Enum_1
, Enum_2
);
14 for Test_Enum
use (Enum_1
=> 8, Enum_2
=> 12);
16 Enum_Values
: constant array (Test_Enum
) of Natural := (8, 12);
18 type Test_Enum_Rep
is range 1..12;
19 Tmp_Test_Enum_Rep
: Test_Enum_Rep
;
21 Tmp_Test_Enum_Rep
:= Test_Enum
'Enum_Rep (Test_Enum
'First);
22 Assert
(" 8", Tmp_Test_Enum_Rep
'Img);
24 for Enum
in Test_Enum
loop
25 Tmp_Test_Enum_Rep
:= Test_Enum
'Enum_Rep (Enum
);
26 Assert
(Enum_Values
(Enum
)'Img, Tmp_Test_Enum_Rep
'Img);
31 type Test_Enum
is (Enum_1
);
32 for Test_Enum
use (Enum_1
=> 2);
34 type Test_Enum_Rep_Full
is range 0..2;
35 subtype Test_Enum_Rep_Short
is
36 Test_Enum_Rep_Full
range 2..Test_Enum_Rep_Full
'Last;
38 Tmp_Test_Enum_Rep_Full
: Test_Enum_Rep_Full
;
39 Tmp_Test_Enum_Rep_Short
: Test_Enum_Rep_Short
;
42 Tmp_Test_Enum_Rep_Short
:= Test_Enum
'Enum_Rep (Test_Enum
'First);
43 Assert
(" 2", Tmp_Test_Enum_Rep_Short
'Img);
45 for Enum
in Test_Enum
loop
46 Tmp_Test_Enum_Rep_Full
:= Test_Enum
'Enum_Rep (Enum
);
47 Assert
(" 2", Tmp_Test_Enum_Rep_Short
'Img);
50 for Enum
in Test_Enum
range Test_Enum
'First .. Test_Enum
'Last loop
51 Tmp_Test_Enum_Rep_Short
:= Test_Enum
'Enum_Rep(Enum
); -- Test #2
52 Assert
(" 2", Tmp_Test_Enum_Rep_Short
'Img);