Files
rtems/c/src/ada-tests/support/test_support.ads
Joel Sherrill 110e1f1dfe 2009-12-14 Joel Sherrill <joel.sherrill@oarcorp.com>
* samples/base_sp/sptest.adb, samples/hello/sptest.adb,
	samples/nsecs/sptest.adb, samples/ticker/sptest.adb,
	sptests/sp01/sptest.adb, sptests/sp02/sptest.adb,
	sptests/sp03/sptest.adb, sptests/sp04/sptest.adb,
	sptests/sp05/sptest.adb, sptests/sp06/sptest.adb,
	sptests/sp07/sptest.adb, sptests/sp08/sptest.adb,
	sptests/sp09/sptest.adb, sptests/sp11/sptest.adb,
	sptests/sp12/sptest.adb, sptests/sp13/sptest.adb,
	sptests/sp14/sptest.adb, sptests/sp15/sptest.adb,
	sptests/sp16/sptest.adb, sptests/sp17/sptest.adb,
	sptests/sp19/sptest.adp, sptests/sp20/sptest.adb,
	sptests/sp22/sptest.adb, sptests/sp23/sptest.adb,
	sptests/sp24/sptest.adb, sptests/sp25/sptest.adb,
	sptests/spname01/spname01.adb, sptests/spname01/sptest.adb,
	sptests/spname01/sptest.ads, support/address_io.adb, support/init.c,
	support/test_support.adb, support/test_support.ads,
	support/time_test_support.adb, support/timer_driver.adb,
	tmtests/tm01/tmtest.adb, tmtests/tm01/tmtest.ads,
	tmtests/tm02/tmtest.adb, tmtests/tm02/tmtest.ads,
	tmtests/tm03/tmtest.adb, tmtests/tm03/tmtest.ads,
	tmtests/tm04/tmtest.adb, tmtests/tm04/tmtest.ads,
	tmtests/tm05/tmtest.adb, tmtests/tm05/tmtest.ads,
	tmtests/tm06/tmtest.adb, tmtests/tm06/tmtest.ads,
	tmtests/tm07/tmtest.adb, tmtests/tm07/tmtest.ads,
	tmtests/tm08/tmtest.adb, tmtests/tm08/tmtest.ads,
	tmtests/tm09/tmtest.adb, tmtests/tm09/tmtest.ads,
	tmtests/tm10/tmtest.adb, tmtests/tm10/tmtest.ads,
	tmtests/tm11/tmtest.adb, tmtests/tm11/tmtest.ads,
	tmtests/tm12/tmtest.adb, tmtests/tm12/tmtest.ads,
	tmtests/tm13/tmtest.adb, tmtests/tm13/tmtest.ads,
	tmtests/tm14/tmtest.adb, tmtests/tm14/tmtest.ads,
	tmtests/tm15/tmtest.adb, tmtests/tm15/tmtest.ads,
	tmtests/tm16/tmtest.adb, tmtests/tm16/tmtest.ads,
	tmtests/tm17/tmtest.adb, tmtests/tm17/tmtest.ads,
	tmtests/tm18/tmtest.adb, tmtests/tm18/tmtest.ads,
	tmtests/tm19/tmtest.adb, tmtests/tm19/tmtest.ads,
	tmtests/tm20/tmtest.adb, tmtests/tm20/tmtest.ads,
	tmtests/tm21/tmtest.adb, tmtests/tm21/tmtest.ads,
	tmtests/tm22/tmtest.adb, tmtests/tm22/tmtest.ads,
	tmtests/tm23/tmtest.adb, tmtests/tm23/tmtest.ads,
	tmtests/tm24/tmtest.adb, tmtests/tm24/tmtest.ads,
	tmtests/tm25/tmtest.adb, tmtests/tm25/tmtest.ads,
	tmtests/tm28/tmtest.adb, tmtests/tm28/tmtest.ads,
	tmtests/tm29/tmtest.adb, tmtests/tm29/tmtest.ads,
	tmtests/tmck/tmtest.adb, tmtests/tmck/tmtest.ads,
	tmtests/tmoverhd/dummy_rtems.adb, tmtests/tmoverhd/tmtest.adb,
	tmtests/tmoverhd/tmtest.ads: Remove many warnings.
2009-12-14 21:17:59 +00:00

198 lines
3.8 KiB
Ada

--
-- Test_Support / SPECIFICATION
--
-- DESCRIPTION:
--
-- This package provides routines which aid the Test Suites
-- and simplify their design and operation.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-2009.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with RTEMS;
package Test_Support is
--
-- Fatal_Directive_Status
--
-- DESCRIPTION:
--
-- This subprogram checks if Status is equal to Desired. If so, it
-- returns immediately. Otherwise, it prints the Message along with
-- the Status and Desired status and invokes the Fatal_Error_Occurred
-- directive.
--
procedure Fatal_Directive_Status (
Status : in RTEMS.Status_Codes;
Desired : in RTEMS.Status_Codes;
Message : in STRING
);
pragma Inline ( Fatal_Directive_Status );
-- Directive_Failed
--
-- DESCRIPTION:
--
-- This subprogram checks if Status is equal to Successful. If so, it
-- returns immediately. Otherwise, it prints the Message along with
-- the Status and Desired status and invokes the Fatal_Error_Occurred
--
procedure Directive_Failed (
Status : in RTEMS.Status_Codes;
Message : in STRING
);
pragma Inline ( Directive_Failed );
--
-- Print_Time
--
-- DESCRIPTION:
--
-- This subprogram prints the Prefix string, following by the
-- time of day in Time_Buffer, followed by the Suffix.
--
procedure Print_Time (
Prefix : in STRING;
Time_Buffer : in RTEMS.Time_Of_Day;
Suffix : in STRING
);
pragma Inline ( Print_Time );
--
-- Put_Dot
--
-- DESCRIPTION:
--
-- This subprogram prints a single character without a carriage return.
--
procedure Put_Dot (
Buffer : in STRING
);
pragma Inline ( Put_Dot );
--
-- Pause
--
-- DESCRIPTION:
--
-- This subprogram is used to pause screen output in the Test Suites
-- until the user presses carriage return.
--
procedure Pause;
--
-- Pause_And_Screen_Number
--
-- DESCRIPTION:
--
-- This subprogram is used to pause screen output and print the current
-- number in the Test Suites until the user presses carriage return.
--
procedure Pause_And_Screen_Number (
SCREEN : in RTEMS.Unsigned32
);
--
-- Put_Name
--
-- DESCRIPTION:
--
-- This subprogram prints the RTEMS object Name. If New_Line is TRUE,
-- then a carriage return is printed after the Name.
--
procedure Put_Name (
Name : in RTEMS.Name;
New_Line : in Boolean
);
--
-- Task_Number
--
-- DESCRIPTION:
--
-- This function returns the task index which the test should use
-- for TID.
--
function Task_Number (
TID : in RTEMS.ID
) return RTEMS.Unsigned32;
pragma Inline ( Task_Number );
--
-- Do_Nothing
--
-- DESCRIPTION:
--
-- This procedure is called when a test wishes to use a delay
-- loop and insure that the compiler does not optimize it away.
--
procedure Do_Nothing;
--
-- Ticks_Per_Second is the number of RTEMS clock ticks which
-- occur each second.
--
function Ticks_Per_Second
return RTEMS.Interval;
--
-- Milliseconds_Per_Tick is the number of milliseconds which
-- occur between each RTEMS clock tick.
--
function Milliseconds_Per_Tick
return RTEMS.Unsigned32;
--
-- Return the size of the RTEMS Workspace
--
function Work_Space_Size
return RTEMS.Unsigned32;
--
-- Return an indication of whether multiprocessing is configured
--
function Is_Configured_Multiprocessing
return Boolean;
--
-- Node is the node number in a multiprocessor configuration
--
function Node
return RTEMS.Unsigned32;
--
-- Longest time in seconds to run a test
--
MAXIMUM_LONG_TEST_DURATION : RTEMS.UNSIGNED32;
private
end Test_Support;