diff options
Diffstat (limited to 'gcc/testsuite/ada/acats/tests/c9/c954025.a')
-rw-r--r-- | gcc/testsuite/ada/acats/tests/c9/c954025.a | 237 |
1 files changed, 0 insertions, 237 deletions
diff --git a/gcc/testsuite/ada/acats/tests/c9/c954025.a b/gcc/testsuite/ada/acats/tests/c9/c954025.a deleted file mode 100644 index f48d4cd9096..00000000000 --- a/gcc/testsuite/ada/acats/tests/c9/c954025.a +++ /dev/null @@ -1,237 +0,0 @@ --- C954025.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 if the original entry call was a conditional entry call, --- the call is cancelled if a requeue-with-abort of the call is not --- selected immediately. --- Check that if the original entry call was a timed entry call, the --- expiration time for a requeue-with-abort is the original expiration --- time. --- --- TEST DESCRIPTION: --- This test declares two tasks: Launch_Control and Mission_Control. --- Mission_Control instructs Launch_Control to start its countdown --- and then requeues (with abort) to the Launch_Control.Launch --- entry. This call to Launch will be accepted at the end of the --- countdown (if the task is still waiting). --- The main task does an unconditional, conditional, and timed --- entry call to Mission_Control and checks to see if the launch --- was accepted. --- --- --- CHANGE HISTORY: --- 18 OCT 95 SAIC ACVC 2.1 --- 10 JUL 96 SAIC Incorporated reviewer's comments. --- ---! - -with Calendar; use type Calendar.Time; -with Report; -with ImpDef; -procedure C954025 is - Verbose : constant Boolean := False; - Countdown_Amount : constant Duration := 2.0 * Impdef.One_Second; - Plenty_Of_Time : constant Duration := - Countdown_Amount + ImpDef.Clear_Ready_Queue + 1.0 * Impdef.One_Second; - Not_Enough_Time : constant Duration := - Countdown_Amount - 0.5 * Impdef.One_Second; -begin - Report.Test ("C954025", - "Check that if the original entry" & - " call was a conditional or timed entry call, the" & - " expiration time for a requeue with abort is the" & - " original expiration time"); - declare - -- note that the following object is a shared object and its use - -- governed by the rules of 9.10(3,4,8);6.0 - Launch_Accepted : Boolean := False; - - task Launch_Control is - entry Enable_Launch_Control; - entry Start_Countdown (How_Long : Duration); - -- Launch will be accepted if a call is waiting when the countdown - -- reaches 0 - entry Launch; - end Launch_Control; - - task body Launch_Control is - Wait_Amount : Duration := 0.0; - begin - loop - select - accept Enable_Launch_Control do - Launch_Accepted := False; - end Enable_Launch_Control; - or - terminate; - end select; - - accept Start_Countdown (How_Long : Duration) do - Wait_Amount := How_Long; - end Start_Countdown; - - delay Wait_Amount; - - select - accept Launch do - Launch_Accepted := True; - end Launch; - else - null; - -- note that Launch_Accepted is False here - end select; - end loop; - end Launch_Control; - - task Mission_Control is - -- launch will occur if we are given enough time to complete - -- a standard countdown. We will not be rushed! - entry Do_Launch; - end Mission_Control; - - task body Mission_Control is - begin - loop - select - accept Do_Launch do - Launch_Control.Start_Countdown (Countdown_Amount); - requeue Launch_Control.Launch with abort; - end Do_Launch; - or - terminate; - end select; - end loop; - end Mission_Control; - - begin -- test encapsulation - -- unconditional entry call to check the simple case - Launch_Control.Enable_Launch_Control; - Mission_Control.Do_Launch; - if Launch_Accepted then - if Verbose then - Report.Comment ("simple case passed"); - end if; - else - Report.Failed ("simple case"); - end if; - - - -- timed but with plenty of time - delay relative - Launch_Control.Enable_Launch_Control; - select - Mission_Control.Do_Launch; - or - delay Plenty_Of_Time; - if Launch_Accepted then - Report.Failed ("plenty of time timed out after accept (1)"); - end if; - end select; - if Launch_Accepted then - if Verbose then - Report.Comment ("plenty of time case passed (1)"); - end if; - else - Report.Failed ("plenty of time (1)"); - end if; - - - -- timed but with plenty of time -- delay until - Launch_Control.Enable_Launch_Control; - select - Mission_Control.Do_Launch; - or - delay until Calendar.Clock + Plenty_Of_Time; - if Launch_Accepted then - Report.Failed ("plenty of time timed out after accept(2)"); - end if; - end select; - if Launch_Accepted then - if Verbose then - Report.Comment ("plenty of time case passed (2)"); - end if; - else - Report.Failed ("plenty of time (2)"); - end if; - - - -- timed without enough time - delay relative - Launch_Control.Enable_Launch_Control; - select - Mission_Control.Do_Launch; - Report.Failed ("not enough time completed accept (1)"); - or - delay Not_Enough_Time; - end select; - if Launch_Accepted then - Report.Failed ("not enough time (1)"); - else - if Verbose then - Report.Comment ("not enough time case passed (1)"); - end if; - end if; - - - -- timed without enough time - delay until - Launch_Control.Enable_Launch_Control; - select - Mission_Control.Do_Launch; - Report.Failed ("not enough time completed accept (2)"); - or - delay until Calendar.Clock + Not_Enough_Time; - end select; - if Launch_Accepted then - Report.Failed ("not enough time (2)"); - else - if Verbose then - Report.Comment ("not enough time case passed (2)"); - end if; - end if; - - - -- conditional case - Launch_Control.Enable_Launch_Control; - -- make sure Mission_Control is ready to accept immediately - delay ImpDef.Clear_Ready_Queue; - select - Mission_Control.Do_Launch; - Report.Failed ("no time completed accept"); - else - if Verbose then - Report.Comment ("conditional case - else taken"); - end if; - end select; - if Launch_Accepted then - Report.Failed ("no time"); - else - if Verbose then - Report.Comment ("no time case passed"); - end if; - end if; - - end; - - Report.Result; -end C954025; |