Changeset 1571:2d21406a6d7f


Ignore:
Timestamp:
Oct 4, 2014, 5:11:25 PM (7 years ago)
Author:
Stefan Schwarzer <sschwarzer@…>
Branch:
default
Message:
Fix error handling for invalid datetime components
(e. g. day == 32).
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • ftputil/stat.py

    r1570 r1571  
    170170        # catch this kind of error.
    171171        except ValueError:
    172             invalid_datetime = (
    173               "{0:04d}-{1:02d}-{2:02d} {3:02d}:{4:02d}:{5:02d}".format(
    174               datetime_tuple))
    175             raise ParserError("invalid datetime {0!r}".
    176                               format(invalid_datetime))
     172            invalid_datetime = ("%04d-%02d-%02d %02d:%02d:%02d" %
     173                                datetime_tuple)
     174            raise ftputil.error.ParserError("invalid datetime {0!r}".
     175                                            format(invalid_datetime))
    177176        try:
    178177            time_float = time.mktime(mktime_tuple)
  • test/test_stat.py

    r1569 r1571  
    125125          # Invalid month abbreviation
    126126          "drwxr-sr-x   2 45854    200           512 Max  4  2000 chemeng",
     127          # Invalid day value
     128          "drwxr-sr-x   2 45854    200           512 May 32  2000 chemeng",
    127129          # Incomplete mode
    128130          "drwxr-sr-    2 45854    200           512 May  4  2000 chemeng",
     
    180182           EPOCH, None, "index.html", None]
    181183        # Make shallow copies to avoid converting the time tuple more
    182         # than once.
     184        # than once in _test_valid_lines`.
    183185        expected_stat_results = [expected_stat_result[:],
    184186                                 expected_stat_result[:],
Note: See TracChangeset for help on using the changeset viewer.