Natools

Diff
Login

Differences From Artifact [d5e4658c45]:

To Artifact [53dd6854ba]:


27
28
29
30
31
32
33

34
35
36
37
38
39
40
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41







+







   -------------------------
   -- Complete Test Suite --
   -------------------------

   procedure All_Tests (Report : in out NT.Reporter'Class) is
   begin
      Basic_Usage (Report);
      Invalid_Atom (Report);
   end All_Tests;



   ----------------------
   -- Individual Tests --
   ----------------------
60
61
62
63
64
65
66

































67
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101







+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

              & Stream_IO.File_Mode'Image (Expected));
         end if;
      end;
   exception
      when Error : others => Test.Report_Exception (Error);
   end Basic_Usage;


   procedure Invalid_Atom (Report : in out NT.Reporter'Class) is
      Test : NT.Test := Report.Item ("Value on invalid atoms");
      use type Stream_IO.File_Mode;
   begin
      Without_Fallback :
      declare
         Found : Stream_IO.File_Mode;
      begin
         Found := Test_IO.Value (To_Atom ("invalid-atom"));
         Test.Fail ("Exception expected, but Value returned "
           & Stream_IO.File_Mode'Image (Found));
      exception
         when Constraint_Error => null;
      end Without_Fallback;

      With_Fallback :
      declare
         Expected : constant Stream_IO.File_Mode := Stream_IO.Out_File;
         Found : constant Stream_IO.File_Mode
           := Test_IO.Value (To_Atom ("invalid-atom"), Expected);
      begin
         if Expected /= Found then
            Test.Fail ("Test_IO.Value returned "
              & Stream_IO.File_Mode'Image (Found)
              & ", expected "
              & Stream_IO.File_Mode'Image (Expected));
         end if;
      end With_Fallback;
   exception
      when Error : others => Test.Report_Exception (Error);
   end Invalid_Atom;

end Natools.S_Expressions.Enumeration_IO.Tests;