HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 0470 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 0470.


Report 0470 Actions


    Problem Report Number 0470
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0089
    Raised 1994-07-15 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.3.2
    Test Identification XPG4.os/time/strptime 3,5
    Problem Summary PG4R.090 Both of the test cases that fail are using date and time formats specified in the VSX 4.3.2 User and Installation guide. The guide specifys the formats using a blank character as a seperator for the f...
    Problem Text
    Both of the test cases that fail are using date and time formats specified
    in the VSX 4.3.2 User and Installation guide. The guide specifys the
    formats using a blank character as a seperator for the formating strings.
    The language definition specifies that the "space" character for the
    language is the '@' character (hex 40). The tests then use a blank
    chracter (hex 20) as the seperator for the formating strings when calling
    "strptime()". Our implementation of strptime expects to see a '@'
    character for the seperator as specified in the language definition.

    If the language definitions are modified for D_T_FMT, T_FMT AND T_FMT_AMPM
    to use the '@' character for seperators and the tests are modified to
    supply the correct format strings ('@' seperated) the tests pass.

    We feel that this was an oversight in developing the tests and ask that
    a Test Suite deficiency waiver be granted.
    Test Output
    ************************************************************************
    /tset/XPG4.os/time/strptime/T.strptime 3 Failed

    Test Description:
    If strptime() is supported:
    When format is a string made up of a series of the following field
    descriptors :
    a. d day of month - 01 to 31 (with or without leading zeros)
    b. D date in %m/%d/%y format
    c. H hour - 00 to 23 (with or without leading zeros)
    d. I hour - 00 to 12 (with or without leading zeros)
    e. j day of year - 001 to 366
    f. M minute - 00 to 59 (with or without leading zeros)
    g. m month of year - 01 to 12 (with or without leading zeros)
    h. n any whitespace character sequence
    i. r time in %I:%M:%S %p format
    j. S second - 00 to 61 (with or without leading zeros)
    k. t any whitespace character sequence
    l. T time in %H:%M:%S notation
    m. U week number of year - 00 to 53 (Sunday as first day of week)
    (with or without leading zeros)
    n. w day of week - 0 to 6 (Sunday = 0) (with or without leading
    zeros)
    o. W week number of year - 00 to 53 (Monday as first day of week)
    (with or without leading zeros)
    p. y last two digits of year - 00 to 99 (with or without leading
    zeros)
    q. Y four digit year including century
    then a call to strptime() reads characters from string and, in the
    case that these characters match the format of the directive,
    translates these characters into the appropriate member of the tm
    structure. Occurrences of "%%" in the format string are matched
    against a single "%" and do not affect the tm structure.
    Otherwise:
    A call to strptime() returns NULL and sets errno to ENOSYS.

    Test Strategy:
    PARENT process will
    CREATE child process using cppair()
    CHILD process will
    FOR each item in the assertion, and for fields with and without
    leading zeroes where allowed, and for locales VSX4L1 and VSX4L2
    where indicated:
    INITIALISE the tm structure to be set by strptime()
    INITIALISE the tm structure that strptime() will be checked
    against.

    IF testing the %p format:
    SET the locale for LC_TIME to VSX4L1 or VSX4L2
    OBTAIN the relevant pseudo-language data using pslanginfo()
    CONVERT the date and time string to a tm structure using
    strptime()
    VERIFY strptime() returns the expected tm structure.

    Test Information:
    weekday , two digit year, and week number of the year, with leading
    zeroes
    strptime("0091@00@01", "%y %w %U", &testbuf) failed.
    return value was NULL
    weekday , two digit year, and week number of the year, without leading
    zeroes
    strptime("92@4@52", "%y %w %U", &testbuf) failed.
    return value was NULL
    weekday , two digit year, and week number of the year, with leading
    zeroes
    strptime("0091@00@01", "%y %w %W", &testbuf) failed.
    return value was NULL
    weekday , two digit year, and week number of the year, without leading
    zeroes
    strptime("92@4@52", "%y %w %W", &testbuf) failed.
    return value was NULL
    %% in format string is mapped to % in test string
    strptime("%@1991@%", "%% %Y %%", &testbuf) failed.
    return value was NULL
    ************************************************************************

    ************************************************************************
    /tset/XPG4.os/time/strptime/T.strptime 5 Failed

    Test Description:
    If strptime() is supported:
    When format is a string containing the following field descriptors
    :
    a. a or A abbreviated or full weekday name - eg. Sun to Sat or
    Sunday to Saturday
    b. b, B or h abbreviated or full month name - eg. Jan to Dec or
    January to December
    c. c appropriate date and time as specified in the D_T_FMT string
    d. p AM/PM string as specified in the AM_STR/PM_STR
    e. x appropriate date as specified in the D_FMT string
    f. X appropriate time as specified in the T_FMT string
    then a call to strptime() reads characters from string and, in the
    case that these characters match the format of the directive,
    translates these characters into the appropriate member of the tm
    structure.
    Otherwise:
    A call to strptime() returns NULL and sets errno to ENOSYS.

    Test Strategy:
    PARENT process will
    CREATE child process using cppair()


    CHILD process will
    SET the locale for LC_TIME to VSX4L1
    FOR each day format
    FOR each full weekday name
    GET the relevant string using pslanginfo()
    INITIALISE the tm structures
    VERIFY that strptime() performs as expected
    FOR each abbreviated weekday name
    GET the relevant string using pslanginfo()
    INITIALISE the tm structures
    VERIFY that strptime() performs as expected
    FOR each month format
    FOR each full month name
    GET the relevant string using pslanginfo()
    INITIALISE the tm structures
    VERIFY that strptime() performs as expected
    FOR each abbreviated month name
    GET the relevant string using pslanginfo()
    INITIALISE the tm structures
    VERIFY that strptime() performs as expected
    FOR format strings D_T_FMT, AM_STR, D_FMT, and T_FMT:
    INITIALISE the tm structures
    VERIFY that strptime() performs as expected
    REPEAT everything contained above in this test for the locale
    VSX4L2

    Test Information:
    appropriate date and time as specified in D_T_FMT string
    strptime("6\05642\05621 NM 09\05705\05791", "%c", &testbuf) failed.
    Current language is VSX4L1
    return value was NULL
    AM string as specified in AM_STR
    strptime("6 VM", "%I %p", &testbuf) failed.
    Current language is VSX4L1
    return value was NULL
    appropriate time as specified in T_FMT string
    strptime("6\05642\05621 NM", "%X", &testbuf) failed.
    Current language is VSX4L1
    return value was NULL
    appropriate date and time as specified in D_T_FMT string
    strptime("5 9 1991 6'42'21", "%c", &testbuf) failed.
    Current language is VSX4L2
    return value was NULL
    PM string as specified in PM_STR
    strptime("6 pm", "%I %p", &testbuf) failed.
    Current language is VSX4L2
    return value was NULL
    appropriate date as specified in D_FMT string
    strptime("05 09 1991", "%x", &testbuf) failed.
    Current language is VSX4L2
    return value was NULL
    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    This failure has already been granted a waiver under reference TSD4.157.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused, please refer to TSD4.157.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority