OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [ada/] [acats/] [tests/] [c9/] [c96006a.ada] - Rev 294

Compare with Previous | Blame | View Log

-- C96006A.ADA
 
--                             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.
--*
-- CHECK THAT FOR THE PACKAGE CALENDAR, THE RELATIONAL OPERATORS WORK
-- CORRECTLY FOR OPERANDS OF TYPE TIME AND TYPE DURATION. PARTICULARLY,
--   (A) RELATIONS BASED ON YEARS.
--   (B) RELATIONS BASED ON MONTH.
--   (C) RELATIONS BASED ON SECONDS.
--   (D) RELATIONS AT EXTREMES OF THE PERMITTED RANGE OF TIME.
 
-- CPP 8/16/84
 
WITH CALENDAR;  USE CALENDAR;
WITH REPORT;  USE REPORT;
PROCEDURE C96006A IS
 
BEGIN
     TEST ("C96006A", "CHECK THAT RELATIONAL OPERATORS WORK " &
           "CORRECTLY IN THE PACKAGE CALENDAR");
 
     --------------------------------------------
 
     DECLARE   -- (A)
     -- RELATIONS BASED ON YEARS.
          NOW, LATER : TIME;
     BEGIN     -- (A)
          NOW := TIME_OF (1984, 8, 12, 500.0);
          LATER := TIME_OF (1985, 8, 12, 500.0);
 
          IF NOW < LATER THEN
               COMMENT ("< OPERATOR OK - (A)");
          ELSE
               FAILED ("< OPERATOR INCORRECT - (A)");
          END IF;
 
          IF NOW <= LATER THEN
               COMMENT ("<= OPERATOR OK - (A)");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (A)");
          END IF;
 
          IF NOW <= NOW THEN
               COMMENT ("<= OPERATOR OK - (A)2");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (A)2");
          END IF;
 
          IF LATER > NOW THEN
               COMMENT ("> OPERATOR OK - (A)");
          ELSE
               FAILED ("> OPERATOR INCORRECT - (A)");
          END IF;
 
          IF LATER >= NOW THEN
               COMMENT (">= OPERATOR OK - (A)");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (A)");
          END IF;
 
          IF LATER >= LATER THEN
               COMMENT (">= OPERATOR OK - (A)2");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (A)2");
          END IF;
 
     END; -- (A)
 
     --------------------------------------------
 
     DECLARE   -- (B)
     -- RELATIONS BASED ON MONTH.
          NOW, LATER : TIME;
     BEGIN     -- (B)
          NOW := TIME_OF (1984, 8, 12, 500.0);
          LATER := TIME_OF (1984, 9, 12, 500.0);
 
          IF NOW < LATER THEN
               COMMENT ("< OPERATOR OK - (B)");
          ELSE
               FAILED ("< OPERATOR INCORRECT - (B)");
          END IF;
 
          IF NOW <= LATER THEN
               COMMENT ("<= OPERATOR OK - (B)");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (B)");
          END IF;
 
          IF NOW <= NOW THEN
               COMMENT ("<= OPERATOR OK - (B)2");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (B)2");
          END IF;
 
          IF LATER > NOW THEN
               COMMENT ("> OPERATOR OK - (B)");
          ELSE
               FAILED ("> OPERATOR INCORRECT - (B)");
          END IF;
 
          IF LATER >= NOW THEN
               COMMENT (">= OPERATOR OK - (B)");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (B)");
          END IF;
 
          IF LATER >= LATER THEN
               COMMENT (">= OPERATOR OK - (B)2");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (B)2");
          END IF;
 
          IF NOW = NOW THEN
               COMMENT ("= OPERATOR OK - (B)");
          ELSE
               FAILED ("= OPERATOR INCORRECT - (B)");
          END IF;
 
          IF LATER /= NOW THEN
               COMMENT ("/= OPERATOR OK - (B)");
          ELSE
               FAILED ("/= OPERATOR INCORRECT - (B)");
          END IF;
 
     END; -- (B)
 
     --------------------------------------------
 
     DECLARE   -- (C)
     -- RELATIONS BASED ON SECONDS.
          NOW, LATER : TIME;
          INCREMENT : DURATION := 99.9;
     BEGIN     -- (C)
          NOW := TIME_OF (1984, 8, 12, 500.0);
          LATER := NOW + INCREMENT;
 
          IF NOW < LATER THEN
               COMMENT ("< OPERATOR OK - (C)");
          ELSE
               FAILED ("< OPERATOR INCORRECT - (C)");
          END IF;
 
          IF NOW <= LATER THEN
               COMMENT ("<= OPERATOR OK - (C)");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (C)");
          END IF;
 
          IF NOW <= NOW THEN
               COMMENT ("<= OPERATOR OK - (C)2");
          ELSE
               FAILED ("<= OPERATOR INCORRECT - (C)2");
          END IF;
 
          IF LATER > NOW THEN
               COMMENT ("> OPERATOR OK - (C)");
          ELSE
               FAILED ("> OPERATOR INCORRECT - (C)");
          END IF;
 
          IF LATER >= NOW THEN
               COMMENT (">= OPERATOR OK - (C)");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (C)");
          END IF;
 
          IF LATER >= LATER THEN
               COMMENT (">= OPERATOR OK - (C)2");
          ELSE
               FAILED (">= OPERATOR INCORRECT - (C)2");
          END IF;
 
          IF LATER = LATER THEN
               COMMENT ("= OPERATOR OK - (C)");
          ELSE
               FAILED ("= OPERATOR INCORRECT - (C)");
          END IF;
 
          IF NOW /= LATER THEN
               COMMENT ("/= OPERATOR OK - (C)");
          ELSE
               FAILED ("/= OPERATOR INCORRECT - (C)");
          END IF;
 
          IF NOW < NOW THEN
               FAILED ("NOW < NOW INCORRECT - (C)");
          ELSIF NOW /= NOW THEN
               FAILED ("NOW = NOW INCORRECT - (C)");
          ELSIF LATER < NOW THEN
               FAILED ("LATER < NOW INCORRECT - (C)");
          ELSIF LATER <= NOW THEN
               FAILED ("LATER <= NOW INCORRECT - (C)");
          ELSIF LATER = NOW THEN
               FAILED ("NOW = LATER INCORRECT - (C)");
          ELSIF NOW > LATER THEN
               FAILED ("NOW > LATER INCORRECT - (C)");
          ELSIF NOW > NOW THEN
               FAILED ("NOW > NOW INCORRECT - (C)");
          ELSIF NOW >= LATER THEN
               FAILED ("NOW >= LATER INCORRECT - (C)");
          ELSIF NOW = LATER THEN
               FAILED ("NOW = LATER INCORRECT - (C)");
          END IF;
 
     END; -- (C)
 
     --------------------------------------------
 
     DECLARE   -- (D)
 
          NOW, WAY_BACK_THEN : TIME;
 
     BEGIN     -- (D)
 
          NOW := TIME_OF (2099, 12, 31);
          WAY_BACK_THEN := TIME_OF (1901, 1, 1);
 
          BEGIN
               IF NOW < WAY_BACK_THEN THEN
                    FAILED ("TEST < AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED ("< AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
          BEGIN
               IF NOW <= WAY_BACK_THEN THEN
                    FAILED ("TEST <= AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED ("<= AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
          BEGIN
               IF WAY_BACK_THEN > NOW THEN
                    FAILED ("TEST > AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED ("> AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
          BEGIN
               IF WAY_BACK_THEN >= NOW THEN
                    FAILED ("TEST >= AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED (">= AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
          BEGIN
               IF WAY_BACK_THEN /= WAY_BACK_THEN THEN
                    FAILED ("TEST /= AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED ("/= AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
          BEGIN
               IF NOW = WAY_BACK_THEN THEN
                    FAILED ("TEST = AT EXTREMES INCORRECT - (D)");
               END IF;
          EXCEPTION
               WHEN OTHERS =>
                    FAILED ("= AT EXTREMES RAISED EXCEPTION - (D)");
          END;
 
     END; -- (D)
 
     --------------------------------------------
 
     RESULT;
END C96006A;
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.