mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
time: relative update (#14240)
This commit is contained in:
committed by
GitHub
parent
ec92d467d1
commit
91c1157810
58
vlib/time/relative_test.v
Normal file
58
vlib/time/relative_test.v
Normal file
@@ -0,0 +1,58 @@
|
||||
import time
|
||||
|
||||
fn test_relative() {
|
||||
// past
|
||||
mut date := time.now()
|
||||
assert date.relative() == 'now'
|
||||
date = date.add_seconds(-61)
|
||||
assert date.relative() == '1 minute ago'
|
||||
assert date.relative_short() == '1m ago'
|
||||
date = date.add_seconds(-120)
|
||||
assert date.relative() == '3 minutes ago'
|
||||
assert date.relative_short() == '3m ago'
|
||||
date = date.add_seconds(-1 * time.seconds_per_hour)
|
||||
assert date.relative() == '1 hour ago'
|
||||
assert date.relative_short() == '1h ago'
|
||||
date = date.add_seconds(-5 * time.seconds_per_hour)
|
||||
assert date.relative() == '6 hours ago'
|
||||
assert date.relative_short() == '6h ago'
|
||||
date = date.add_seconds(-1 * time.seconds_per_day)
|
||||
assert date.relative() == '1 day ago'
|
||||
assert date.relative_short() == '1d ago'
|
||||
date = date.add_seconds(-4 * time.seconds_per_day)
|
||||
assert date.relative() == '5 days ago'
|
||||
assert date.relative_short() == '5d ago'
|
||||
date = time.now().add_seconds(-75 * time.seconds_per_day)
|
||||
assert date.relative() == 'last ${date.custom_format('MMM')} ${date.custom_format('D')}'
|
||||
assert date.relative_short() == '75d ago'
|
||||
date = time.now().add_seconds(-400 * time.seconds_per_day)
|
||||
assert date.relative() == '1 year ago'
|
||||
assert date.relative_short() == '1y ago'
|
||||
|
||||
// future
|
||||
date = time.now()
|
||||
date = date.add_seconds(61)
|
||||
assert date.relative() == 'in 1 minute'
|
||||
assert date.relative_short() == 'in 1m'
|
||||
date = date.add_seconds(120)
|
||||
assert date.relative() == 'in 3 minutes'
|
||||
assert date.relative_short() == 'in 3m'
|
||||
date = date.add_seconds(1 * time.seconds_per_hour)
|
||||
assert date.relative() == 'in 1 hour'
|
||||
assert date.relative_short() == 'in 1h'
|
||||
date = date.add_seconds(5 * time.seconds_per_hour)
|
||||
assert date.relative() == 'in 6 hours'
|
||||
assert date.relative_short() == 'in 6h'
|
||||
date = date.add_seconds(time.seconds_per_day)
|
||||
assert date.relative() == 'in 1 day'
|
||||
assert date.relative_short() == 'in 1d'
|
||||
date = date.add_seconds(4 * time.seconds_per_day)
|
||||
assert date.relative() == 'in 5 days'
|
||||
assert date.relative_short() == 'in 5d'
|
||||
date = time.now().add_seconds(75 * time.seconds_per_day)
|
||||
assert date.relative() == 'on ${date.custom_format('MMM')} ${date.custom_format('D')}'
|
||||
assert date.relative_short() == 'in 75d'
|
||||
date = time.now().add_seconds(400 * time.seconds_per_day)
|
||||
assert date.relative() == 'in 1 year'
|
||||
assert date.relative_short() == 'in 1y'
|
||||
}
|
||||
Reference in New Issue
Block a user