DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T V

⟦214b8335e⟧ TextFile

    Length: 5580 (0x15cc)
    Types: TextFile
    Names: »V«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

package Test is

    procedure Augment (View : String := "$$"; Response : String := "<PROFILE>");

    -- Given an existing subsystem view (normally a load view) with the
    -- typical structure:
    --
    --      RevX_Y_n                : Subsystem View
    --         .<miscellaneous>     : Directories
    --         .Units               : Directory
    --
    -- augments that structure for regression testing:
    --
    --      RevX_Y_n                : Subsystem View
    --         .<miscellaneous>     : Directories
    --         .Units               : Directory
    --            .New_Test_Results : Directory
    --            .Old_Test_Results : Directory
    --
    -- by adding subdirectories to facilitate the automatic comparison
    -- of test results.


    procedure Template (Test_Id : String := ">>TestId<<";
                        Test_Directory : String := "$";
                        Response : String := "<PROFILE>");

    -- Builds a template for a new test by creating these units:
    --
    --      <TestId>_Test : Proc_Spec & Proc_Body
    --
    -- in the Test_Directory, which should be the Units directory
    -- (or some Units subdirectory such as Units.Tests) in a
    -- subsystem view that is "augmented" for regression testing.
    --
    -- Test_Id is the identifier for the new test.  It is concatenated
    -- with "_Test" to form the name of the procedure to be built here,
    -- and also used later as the first argument to Test.Update_Results.


    procedure Driver_Template (Name : String := "Test_All";
                               With_Tests : String := "$$.?.@_Test'spec";
                               Test_Directory : String := "$";
                               Response : String := "<PROFILE>");

    -- Builds a template for a new test driver procedure in the
    -- Test_Directory, which should be the Units directory (or some
    -- Units subdirectory such as Units.Tests) in a subsystem view
    -- that is "augmented" for regression testing.
    --
    -- The simple Name of the driver procedure defaults to "Test_All",
    -- but a different simple name can be specified.  Thus, multiple
    -- test drivers can be created to call various subsets of tests,
    -- or to do various preprocessing or postprocessing of tests.
    --
    -- The driver body will "with" and call each of the test procedures
    -- specified by With_Tests, which is evaluated relative to the
    -- Test_Directory and defaults to all procedure specs with names
    -- of the form @_Test in the enclosing view.  (Failure to resolve
    -- any units for the With_Tests naming expression is not considered
    -- to be an error.)


    procedure Run (Views : String := "$$";
                   Driver : String := "Test_All";
                   Log_File : String := "";
                   Response : String := "<PROFILE>");

    -- Iterates through all the specified subsystem views to run the
    -- test driver procedures that they contain.  Views can be any
    -- valid naming expression, for example:
    --
    --      "_Indirect_File"       "[Test_View_1,Test_View_2]"
    --      "_Activity"            "!Regression.@_Tests.Rev@"
    --
    -- If a Driver procedure is not found in any of the views, a
    -- warning message is placed in the test log and (unless the
    -- Response argument precludes perseverance) processing continues
    -- with the next view in the list.
    --
    -- Test logs are redirected to the Log_File, which defaults to
    -- Current_Output.


    procedure Update_Results (Test_Id : String := ">>TestId<<";
                              Suffix : String := "_@";
                              Response : String := "<PROFILE>");

    -- Updates the "correct" files that are used for automatic output
    -- comparison of test results.  This primarily involves overlaying
    -- files in the Old_Test_Results directory with corresponding files
    -- from the New_Test_Results directory, then destroying these files
    -- in the New_Test_Results directory.
    --
    -- The naming conventions for files containing test results are:
    --
    --      Programmatic:   <TestId>_Output
    --                      <TestId>_Error
    --                      <TestId>_<OtherSuffix>
    --
    --      Interactive:    <TestId>_<ImageId>
    --
    -- In the New_Test_Results directory, an extra file is created that
    -- details the differences between the new and old test results.
    -- The name of this file is derived by appending "_Diff" to the above
    -- filenames.
    --
    -- Test_Id parameter:   + usually set to a specific test identifier
    --                      + "@" will also work if you want to update
    --                        results for all the tests in one fell swoop
    --                      + set notation, e.g., "[t1,t2]", will NOT work
    --
    -- Suffix parameter:    + suffix, including leading underscore, that
    --                        completes the filename
    --                      + default is all files from the specified test
    --                      + may be changed to "_Output", etc., to select
    --                        specific files
    --
    -- Test.Update_Results should be run from the New_Test_Results directory
    -- after inspecting the new test results.  It depends upon the current
    -- context, resolving file names relative to ^New_Test_Results and
    -- ^Old_Test_Results.


    Error : exception;

    -- Raised only when errors occur and exception propagation is
    -- requested by the Response argument.

end Test;