diff options
Diffstat (limited to 'gcc/testsuite/ada/acats/tests/cxf/cxf3004.a')
-rw-r--r-- | gcc/testsuite/ada/acats/tests/cxf/cxf3004.a | 257 |
1 files changed, 0 insertions, 257 deletions
diff --git a/gcc/testsuite/ada/acats/tests/cxf/cxf3004.a b/gcc/testsuite/ada/acats/tests/cxf/cxf3004.a deleted file mode 100644 index 146047bc824..00000000000 --- a/gcc/testsuite/ada/acats/tests/cxf/cxf3004.a +++ /dev/null @@ -1,257 +0,0 @@ --- CXF3004.A --- --- Grant of Unlimited Rights --- --- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687, --- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained --- unlimited rights in the software and documentation contained herein. --- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making --- this public release, the Government intends to confer upon all --- recipients unlimited rights equal to those held by the Government. --- These rights include rights to use, duplicate, release or disclose the --- released technical data and computer software in whole or in part, in --- any manner and for any purpose whatsoever, and to have or permit others --- to do so. --- --- DISCLAIMER --- --- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR --- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED --- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE --- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE --- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A --- PARTICULAR PURPOSE OF SAID MATERIAL. ---* --- --- OBJECTIVE: --- Check that statically identifiable picture strings can be used --- in conjunction with function Image to produce output strings --- appropriate to foreign currency representations. --- --- Check that statically identifiable picture strings will cause --- function Image to raise Layout_Error under the appropriate --- conditions. --- --- TEST DESCRIPTION: --- This test defines several picture strings that are statically --- identifiable, (i.e., Pic : Picture := To_Picture("..."); ). --- These picture strings are used in conjunction with decimal data --- as parameters in calls to function Image. --- --- --- CHANGE HISTORY: --- 11 Apr 96 SAIC Initial release for 2.1. --- ---! - -with Report; -with Ada.Text_IO.Editing; -with Ada.Exceptions; - -procedure CXF3004 is -begin - - Report.Test ("CXF3004", "Check that statically identifiable " & - "picture strings will cause function Image " & - "to raise Layout_Error under appropriate " & - "conditions"); - - Test_Block: - declare - - use Ada.Exceptions; - use Ada.Text_IO.Editing; - - FF_Currency : constant String := "FF"; - DM_Currency : constant String := "DM"; - FF_Separator : constant Character := '.'; - DM_Separator : constant Character := ','; - FF_Radix : constant Character := ','; - DM_Radix : constant Character := '.'; - Blank_Fill : constant Character := ' '; - Star_Fill : constant Character := '*'; - - - -- Define a decimal data type, and instantiate the Decimal_Output - -- generic package for the data type. - - type Decimal_Data_Type is delta 0.01 digits 16; - - package Image_IO is - new Decimal_Output(Num => Decimal_Data_Type, - Default_Currency => "$", - Default_Fill => Star_Fill, - Default_Separator => Default_Separator, - Default_Radix_Mark => DM_Radix); - - - - -- The following decimal data items are used with picture strings - -- in evaluating use of foreign currency symbols. - - Dec_Data_1 : Decimal_Data_Type := 123456.78; - Dec_Data_2 : Decimal_Data_Type := 32.10; - Dec_Data_3 : Decimal_Data_Type := -1234.57; - Dec_Data_4 : Decimal_Data_Type := 123456.78; - Dec_Data_5 : Decimal_Data_Type := 12.34; - Dec_Data_6 : Decimal_Data_Type := 12.34; - Dec_Data_7 : Decimal_Data_Type := 12345.67; - - - -- Statically identifiable picture strings. - -- These strings are used in conjunction with non-default values - -- for Currency string, Radix mark, and Separator in calls to - -- function Image. - - Picture_1 : Picture := To_Picture("-###**_***_**9.99"); -- FF - Picture_2 : Picture := To_Picture("###z_ZZ9.99"); -- FF - Picture_3 : Picture := To_Picture("<<<<_<<<.<<###>"); -- DM - Picture_4 : Picture := To_Picture("-$_$$$_$$$_$$9.99"); -- DM - Picture_5 : Picture := To_Picture("$Zz9.99"); -- DM - Picture_6 : Picture := To_Picture("$$$9.99"); -- DM - Picture_7 : Picture := To_Picture("###_###_##9.99"); -- CHF - - - -- The following ten edited output strings correspond to the ten - -- foreign currency picture strings. - - Output_1 : constant String := " FF***123.456,78"; - Output_2 : constant String := " FF 32,10"; - Output_3 : constant String := " (1,234.57DM )"; - Output_4 : constant String := " DM123,456.78"; - Output_5 : constant String := "DM 12.34"; - Output_6 : constant String := " DM12.34"; - Output_7 : constant String := " CHF12,345.67"; - - - begin - - -- Check the results of function Image, using the picture strings - -- constructed above, in creating foreign currency edited output - -- strings. - - if Image_IO.Image(Item => Dec_Data_1, - Pic => Picture_1, - Currency => FF_Currency, - Fill => Star_Fill, - Separator => FF_Separator, - Radix_Mark => FF_Radix) /= Output_1 - then - Report.Failed("Incorrect result from Fn. Image using Picture_1"); - end if; - - if Image_IO.Image(Item => Dec_Data_2, - Pic => Picture_2, - Currency => FF_Currency, - Fill => Blank_Fill, - Separator => FF_Separator, - Radix_Mark => FF_Radix) /= Output_2 - then - Report.Failed("Incorrect result from Fn. Image using Picture_2"); - end if; - - if Image_IO.Image(Item => Dec_Data_3, - Pic => Picture_3, - Currency => DM_Currency, - Fill => Blank_Fill, - Separator => DM_Separator, - Radix_Mark => DM_Radix) /= Output_3 - then - Report.Failed("Incorrect result from Fn. Image using Picture_3"); - end if; - - if Image_IO.Image(Item => Dec_Data_4, - Pic => Picture_4, - Currency => DM_Currency, - Fill => Blank_Fill, - Separator => DM_Separator, - Radix_Mark => DM_Radix) /= Output_4 - then - Report.Failed("Incorrect result from Fn. Image using Picture_4"); - end if; - - if Image_IO.Image(Item => Dec_Data_5, - Pic => Picture_5, - Currency => DM_Currency, - Fill => Blank_Fill, - Separator => DM_Separator, - Radix_Mark => DM_Radix) /= Output_5 - then - Report.Failed("Incorrect result from Fn. Image using Picture_5"); - end if; - - if Image_IO.Image(Item => Dec_Data_6, - Pic => Picture_6, - Currency => DM_Currency, - Fill => Blank_Fill, - Separator => DM_Separator, - Radix_Mark => DM_Radix) /= Output_6 - then - Report.Failed("Incorrect result from Fn. Image using Picture_6"); - end if; - - if Image_IO.Image(Item => Dec_Data_7, - Pic => Picture_7, - Currency => "CHF", - Fill => Blank_Fill, - Separator => ',', - Radix_Mark => '.') /= Output_7 - then - Report.Failed("Incorrect result from Fn. Image using Picture_7"); - end if; - - - -- The following calls of Function Image, using the specific - -- decimal values and picture strings provided, will cause - -- a Layout_Error to be raised. - -- Note: The data and the picture strings used in the following - -- evaluations are not themselves erroneous, but when used in - -- combination will cause Layout_Error to be raised. - - Exception_Block_1 : - declare - Erroneous_Data_1 : Decimal_Data_Type := 12.34; - Erroneous_Picture_1 : Picture := To_Picture("9.99"); - N : constant Natural := Image_IO.Length(Erroneous_Picture_1); - TC_String : String(1..N); - begin - TC_String := Image_IO.Image(Erroneous_Data_1, Erroneous_Picture_1); - Report.Failed("Layout_Error not raised by combination of " & - "Erroneous_Picture_1 and Erroneous_Data_1"); - Report.Comment("Should never be printed: " & TC_String); - exception - when Ada.Text_IO.Layout_Error => null; -- OK, expected exception. - when The_Error : others => - Report.Failed - ("The following exception was incorrectly raised in " & - "Exception_Block_1: " & Exception_Name(The_Error)); - end Exception_Block_1; - - Exception_Block_2 : - declare - Erroneous_Data_2 : Decimal_Data_Type := -12.34; - Erroneous_Picture_2 : Picture := To_Picture("99.99"); - N : constant Natural := Image_IO.Length(Erroneous_Picture_2); - TC_String : String(1..N); - begin - TC_String := Image_IO.Image(Erroneous_Data_2, Erroneous_Picture_2); - Report.Failed("Layout_Error not raised by combination of " & - "Erroneous_Picture_2 and Erroneous_Data_2"); - Report.Comment("Should never be printed: " & TC_String); - exception - when Ada.Text_IO.Layout_Error => null; -- OK, expected exception. - when The_Error : others => - Report.Failed - ("The following exception was incorrectly raised in " & - "Exception_Block_2: " & Exception_Name(The_Error)); - end Exception_Block_2; - - exception - when The_Error : others => - Report.Failed("The following exception was raised in the " & - "Test_Block: " & Exception_Name(The_Error)); - end Test_Block; - - Report.Result; - -end CXF3004; |