* adjusted past_format and future_format to past_tense and future_tense
* corrected all tests and documentation to reflect new keyword argument names
* changed example _tense strings to use {} instead of {0}
* cleaned up docstrings
This commit is contained in:
parent
3cbd5101b3
commit
fb0ffca26e
3 changed files with 27 additions and 27 deletions
18
README.rst
18
README.rst
|
|
@ -40,18 +40,18 @@ You really only need to worry about *human*.
|
|||
|
||||
Here are all the available arguments and defaults::
|
||||
|
||||
human(d, precision=2, past_format='{0} ago', future_format='in {0}'):
|
||||
human(date_time, precision=2, past_tense='{} ago', future_tense='in {}'):
|
||||
|
||||
d
|
||||
date_time
|
||||
datetime object to make into human readable, required
|
||||
|
||||
precision
|
||||
control how verbose the output should look, optional
|
||||
|
||||
past_format
|
||||
past_tense
|
||||
format string used when d is a past datetime, optional
|
||||
|
||||
future_format
|
||||
future_tense
|
||||
format string used when d is a future datetime, optional
|
||||
|
||||
|
||||
|
|
@ -99,16 +99,16 @@ Now we will document how to use delta2human and delta2dict::
|
|||
# create a dictionary out of the timedelta
|
||||
print delta2dict( delta )
|
||||
|
||||
Example past_format and future_format keyword arguments::
|
||||
Example past_tense and future_tense keyword arguments::
|
||||
|
||||
output1 = human( PAST,
|
||||
past_format = 'titanic sunk {0} ago',
|
||||
future_format = 'titanic will sink in {0} from now'
|
||||
past_tense = 'titanic sunk {0} ago',
|
||||
future_tense = 'titanic will sink in {0} from now'
|
||||
)
|
||||
|
||||
output2 = human( FUTURE,
|
||||
past_format = 'titanic sunk {0} ago',
|
||||
future_format = 'titanic will sink in {0} from now'
|
||||
past_tense = 'titanic sunk {0} ago',
|
||||
future_tense = 'titanic will sink in {0} from now'
|
||||
)
|
||||
|
||||
print output1
|
||||
|
|
|
|||
20
ago.py
20
ago.py
|
|
@ -2,7 +2,7 @@ from datetime import datetime
|
|||
from datetime import timedelta
|
||||
|
||||
def delta2dict( delta ):
|
||||
"""return dictionary of delta"""
|
||||
"""Accepts a delta, returns a dictionary of units"""
|
||||
delta = abs( delta )
|
||||
return {
|
||||
'year' : delta.days / 365 ,
|
||||
|
|
@ -13,10 +13,10 @@ def delta2dict( delta ):
|
|||
'microsecond' : delta.microseconds
|
||||
}
|
||||
|
||||
def delta2human(delta, precision=2, past_format='{0} ago', future_format='in {0}'):
|
||||
"""return human readable delta string"""
|
||||
the_format = past_format
|
||||
if delta < timedelta(0): the_format = future_format
|
||||
def delta2human(delta, precision=2, past_tense='{} ago', future_tense='in {}'):
|
||||
"""Accepts a delta, returns a human readable delta string"""
|
||||
the_tense = past_tense
|
||||
if delta < timedelta(0): the_tense = future_tense
|
||||
d = delta2dict( delta )
|
||||
hlist = []
|
||||
count = 0
|
||||
|
|
@ -28,12 +28,12 @@ def delta2human(delta, precision=2, past_format='{0} ago', future_format='in {0}
|
|||
hlist.append( '%s %s%s' % ( d[unit], unit, s ) )
|
||||
count += 1
|
||||
human_delta = ', '.join( hlist )
|
||||
return the_format.format(human_delta)
|
||||
return the_tense.format(human_delta)
|
||||
|
||||
def human(d, precision=2, past_format='{0} ago', future_format='in {0}'):
|
||||
"""Pass datetime we will return human delta string"""
|
||||
delta = datetime.now() - d
|
||||
return delta2human( delta, precision, past_format, future_format )
|
||||
def human(date_time, precision=2, past_tense='{} ago', future_tense='in {}'):
|
||||
"""Accepts a datetime, returns a human readable delta string"""
|
||||
delta = datetime.now() - date_time
|
||||
return delta2human( delta, precision, past_tense, future_tense )
|
||||
|
||||
if __name__ == "__main__":
|
||||
from test_ago import test_output
|
||||
|
|
|
|||
16
test_ago.py
16
test_ago.py
|
|
@ -41,17 +41,17 @@ def test_one_day_singular():
|
|||
def test_two_day_plural():
|
||||
assert 's' in delta2human( timedelta(2) )
|
||||
|
||||
def test_past_format():
|
||||
def test_past_tense():
|
||||
output = human( PAST,
|
||||
past_format = 'titanic sunk {0} ago',
|
||||
future_format = 'titanic will sink in {0} from now'
|
||||
past_tense = 'titanic sunk {} ago',
|
||||
future_tense = 'titanic will sink in {} from now'
|
||||
)
|
||||
assert 'titanic sunk' in output
|
||||
|
||||
def test_future_format():
|
||||
def test_future_tense():
|
||||
output = human( FUTURE,
|
||||
past_format = 'titanic sunk {0} ago',
|
||||
future_format = 'titanic will sink in {0} from now'
|
||||
past_tense = 'titanic sunk {} ago',
|
||||
future_tense = 'titanic will sink in {} from now'
|
||||
)
|
||||
assert 'titanic will sink in' in output
|
||||
|
||||
|
|
@ -69,11 +69,11 @@ def test_output():
|
|||
print '\nTesting past:\n'
|
||||
print delta2dict( PAST_DELTA )
|
||||
print 'Commented ' + delta2human( PAST_DELTA, 3 )
|
||||
print human( PAST, past_format = "Commented {0} ago" )
|
||||
print human( PAST, past_tense = "Commented {} ago" )
|
||||
|
||||
print '\nTesting future:\n'
|
||||
print delta2dict( FUTURE_DELTA )
|
||||
print 'Shutdown ' + delta2human( FUTURE_DELTA, 3 )
|
||||
print human( FUTURE, future_format = 'Shutdown in {0} from now' )
|
||||
print human( FUTURE, future_tense = 'Shutdown in {} from now' )
|
||||
print ''
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue