Subversion Repositories DevTools

Rev

Blame | Last modification | View Log | RSS feed

CREATE PROCEDURE "RELEASE_MANAGER"."NEW_UNIT_TEST" ( nPv_id IN NUMBER,
                                            nTestTypeId IN UNIT_TESTS.TEST_TYPES_FK%TYPE,
                                            sTest_summary IN UNIT_TESTS.TEST_SUMMARY%TYPE,
                                            sNumOfTest IN UNIT_TESTS.NUMOF_TEST%TYPE,
                                            sDpkg_path IN VARCHAR2,
                                            sResults IN VARCHAR2,
                                            sCompletion_date IN VARCHAR2,
                                            nCompleted_by IN NUMBER,
                                                                                        enumTEST_TYPE_AUTOMATIC IN NUMBER,
                                                                                        enumTEST_TYPE_NOT_DONE IN NUMBER,
                                                                                        outFileName OUT VARCHAR2
                                           ) IS
/* ---------------------------------------------------------------------------
    Version: 3.2.0
   --------------------------------------------------------------------------- */

        FILENAME_PREFIX CONSTANT VARCHAR2(50) := 'RM_UNIT_TEST';

    newID NUMBER;
    ResultsURL UNIT_TESTS.RESULTS_URL%TYPE DEFAULT NULL;
    ResultsAttachment UNIT_TESTS.RESULTS_ATTACHMENT_NAME%TYPE DEFAULT NULL;

BEGIN

        -- Get new ID --
        SELECT SEQ_UNIT_TESTS.NEXTVAL INTO newID FROM DUAL;

       IF nTestTypeId = enumTEST_TYPE_AUTOMATIC THEN
        ResultsURL := sResults;
       ELSE
        IF (sResults <> '') OR ( NOT sResults IS NULL ) THEN
                outFileName := FILENAME_PREFIX || newID ||'_'|| sResults;
                ResultsAttachment := sDpkg_path || '/' || outFileName;
           END IF;
       END IF;

        -- Remove NOT_DONE entry if exists
        DELETE FROM UNIT_TESTS
         WHERE pv_id = nPv_id
           AND test_types_fk = enumTEST_TYPE_NOT_DONE;

        --- Add Additional Note ---
    INSERT INTO UNIT_TESTS ( TEST_ID,
                                                                PV_ID,
                                                                TEST_TYPES_FK,
                                                                TEST_SUMMARY,
                                                                COMPLETION_DATE,
                                                                COMPLETED_BY,
                                                                RESULTS_URL,
                                                                RESULTS_ATTACHMENT_NAME,
                                                                NUMOF_TEST )
    VALUES (
        newID,
           nPv_id,
           nTestTypeId,
           sTest_summary,
           TO_DATE( sCompletion_date,'DD/MM/YYYY' ),
           nCompleted_by,
           ResultsURL,
           ResultsAttachment,
                   sNumOfTest );

END New_Unit_Test;
/