diff options
| author | Shpuld Shpludson <shp@cock.li> | 2020-01-15 16:35:13 +0000 |
|---|---|---|
| committer | Shpuld Shpludson <shp@cock.li> | 2020-01-15 16:35:13 +0000 |
| commit | 3ab128e73924ce34d190ff609cb9b081cdffe402 (patch) | |
| tree | bba013a7d61688b90c1f59a8f9fa6c3323b72a05 /test/unit/specs/services/date_utils/date_utils.spec.js | |
| parent | 7c26435e66fd7e142ea4b88fbe51eede32eeb5ce (diff) | |
| parent | 7397636914a9d3e7fd30373034c25175273ab808 (diff) | |
Merge branch 'develop' into 'master'
`master` refresh with `develop`
See merge request pleroma/pleroma-fe!1028
Diffstat (limited to 'test/unit/specs/services/date_utils/date_utils.spec.js')
| -rw-r--r-- | test/unit/specs/services/date_utils/date_utils.spec.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/unit/specs/services/date_utils/date_utils.spec.js b/test/unit/specs/services/date_utils/date_utils.spec.js new file mode 100644 index 00000000..2d61dbac --- /dev/null +++ b/test/unit/specs/services/date_utils/date_utils.spec.js @@ -0,0 +1,40 @@ +import * as DateUtils from 'src/services/date_utils/date_utils.js' + +describe('DateUtils', () => { + describe('relativeTime', () => { + it('returns now with low enough amount of seconds', () => { + const futureTime = Date.now() + 20 * DateUtils.SECOND + const pastTime = Date.now() - 20 * DateUtils.SECOND + expect(DateUtils.relativeTime(futureTime, 30)).to.eql({ num: 0, key: 'time.now' }) + expect(DateUtils.relativeTime(pastTime, 30)).to.eql({ num: 0, key: 'time.now' }) + }) + + it('rounds down for past', () => { + const time = Date.now() - 1.8 * DateUtils.HOUR + expect(DateUtils.relativeTime(time)).to.eql({ num: 1, key: 'time.hour' }) + }) + + it('rounds up for future', () => { + const time = Date.now() + 1.8 * DateUtils.HOUR + expect(DateUtils.relativeTime(time)).to.eql({ num: 2, key: 'time.hours' }) + }) + + it('uses plural when necessary', () => { + const time = Date.now() - 3.8 * DateUtils.WEEK + expect(DateUtils.relativeTime(time)).to.eql({ num: 3, key: 'time.weeks' }) + }) + + it('works with date string', () => { + const time = Date.now() - 4 * DateUtils.MONTH + const dateString = new Date(time).toISOString() + expect(DateUtils.relativeTime(dateString)).to.eql({ num: 4, key: 'time.months' }) + }) + }) + + describe('relativeTimeShort', () => { + it('returns the short version of the same relative time', () => { + const time = Date.now() + 2 * DateUtils.YEAR + expect(DateUtils.relativeTimeShort(time)).to.eql({ num: 2, key: 'time.years_short' }) + }) + }) +}) |
