Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-3366

ThriftTest to implement standard return values

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.10.0
    • Component/s: Dart - Library
    • Labels:

      Description

      All ThriftTest implementations should implement the return codes as outlined in the test docs

      Return code

      The return code (exit code) shall be 0 on success, or an integer in the range 1 - 255 on errors. In order to signal failed tests, the return code shall be composed from these bits to indicate failing tests:

        #define TEST_BASETYPES     1  // 0000 0001
        #define TEST_STRUCTS       2  // 0000 0010
        #define TEST_CONTAINERS    4  // 0000 0100
        #define TEST_EXCEPTIONS    8  // 0000 1000
        #define TEST_UNKNOWN      64  // 0100 0000 (Failed to prepare environment etc.)
        #define TEST_TIMEOUT     128  // 1000 0000
        #define TEST_NOTUSED      48  // 0011 0000 (reserved bits)
      

      Tests that have not been executed at all count as errors.

      Example:

      During tests, the test client notices that some of the Struct tests fail. Furthermore, due to some other problem none of the Exception tests is executed. Therefore, the test client returns the code 10 = 2 | 8, indicating the failure of both test 2 (TEST_STRUCTS) and test 8 (TEST_EXCEPTIONS).

        Attachments

          Activity

            People

            • Assignee:
              markerickson-wk Mark Erickson
              Reporter:
              jensg Jens Geyer
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: