Changeset 57

Show
Ignore:
Timestamp:
06/15/06 07:39:37 (7 years ago)
Author:
mk
Message:

Unified Cheesecake score formatting.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/mk/cheesecake/_util.py

    r44 r57  
    6464 
    6565def pad_left_spaces(value, length=PAD_VALUE): 
     66    """Pad value with spaces at left up to given length. 
     67 
     68    >>> pad_left_spaces(15, 4) 
     69    '  15' 
     70    >>> pad_left_spaces(123456, 2) 
     71    '123456' 
     72    >>> len(pad_left_spaces("")) == PAD_VALUE 
     73    True 
    6674    """ 
    67     Pad value with spaces at left up to given length 
     75    if not isinstance(value, basestring): 
     76        value = str(value) 
     77    diff = length - len(value) 
     78    return " " * diff + value 
     79 
     80def pad_right_spaces(value, length=PAD_VALUE): 
     81    """Pad value with spaces at left up to given length. 
     82 
     83    >>> pad_right_spaces(123, 5) 
     84    '123  ' 
     85    >>> pad_right_spaces(12.1, 5) 
     86    '12.1 ' 
    6887    """ 
    69     msg = "" 
    70     diff = length - len(str(value)) 
    71     for i in range(diff): 
    72         msg += " " 
    73     msg += str(value) 
    74     return msg 
     88    if not isinstance(value, basestring): 
     89        value = str(value) 
     90    diff = length - len(value) 
     91    return value + " " * diff 
    7592 
    76 def pad_msg(msg, value): 
     93def pad_msg(msg, value, msg_length=PAD_TEXT, value_length=PAD_VALUE): 
     94    """Pad message with dots and pad value with spaces. 
     95 
     96    >>> pad_msg("123456", 77, msg_length=10, value_length=4) 
     97    '123456 ...  77' 
     98    >>> pad_msg("123", u"45", msg_length=5, value_length=3) 
     99    u'123 . 45' 
    77100    """ 
    78     Pad message with dots and pad value with spaces 
     101    return msg + " " +"." * (msg_length-len(msg)-1) + pad_left_spaces(value, value_length) 
     102 
     103def pad_line(char="=", length=(PAD_TEXT+PAD_VALUE+1)): 
     104    """Return line consisting of 'char' characters. 
    79105    """ 
    80     length = len(msg) 
    81     msg = msg + " " 
    82     for i in range(length, PAD_TEXT): 
    83         msg += "." 
    84     diff = PAD_VALUE - len(str(value)) 
    85     for i in range(diff): 
    86         msg += " " 
    87     msg += str(value) 
    88     return msg 
    89  
    90 def pad_line(char="="): 
    91     """ 
    92     Return line consisting of 'char' characters 
    93     """ 
    94     msg = char * (PAD_TEXT + PAD_VALUE + 1) 
    95     return msg 
     106    return char * length 
    96107 
    97108def unzip_package(package, destination): 
  • branches/mk/cheesecake/cheesecake_index.py

    r44 r57  
    2525from math import ceil 
    2626 
    27 from _util import pad_with_dots, pad_left_spaces, pad_msg, pad_line 
     27from _util import pad_with_dots, pad_left_spaces, pad_right_spaces, pad_msg, pad_line 
    2828from _util import run_cmd, command_successful 
    2929from _util import unzip_package, untar_package 
     
    326326 
    327327    def _print_info_one(self): 
    328         print "%s%s (%s)" % (pad_with_dots(self.name), 
    329                              pad_left_spaces(self.value), 
    330                              self.details) 
     328        print "%s  (%s)" % (pad_msg(self.name, self.value), self.details) 
    331329 
    332330    def _print_info_many(self): 
     
    340338        print pad_msg("%s INDEX (ABSOLUTE)" % self.name, self.value) 
    341339        msg = pad_msg("%s INDEX (RELATIVE)" % self.name, percentage) 
    342         msg += " (%d out of a maximum of %d points is %d%%)" %\ 
     340        msg += " (%d out of a maximum of %d points is %d%%)" %\ 
    343341             (self.value, max_value, percentage) 
    344342 
     
    11441142        print pad_line("=") 
    11451143        print pad_msg("OVERALL CHEESECAKE INDEX (ABSOLUTE)", cheesecake_index) 
    1146         print "%s (%d out of a maximum of %d points is %d%%)" % \ 
     1144        print "%s (%d out of a maximum of %d points is %d%%)" % \ 
    11471145              (pad_msg("OVERALL CHEESECAKE INDEX (RELATIVE)", percentage), 
    11481146               cheesecake_index,