add test
This commit is contained in:
29
tests/unit/utils/formatTime.spec.js
Normal file
29
tests/unit/utils/formatTime.spec.js
Normal file
@@ -0,0 +1,29 @@
|
||||
import { formatTime } from '@/utils/index.js'
|
||||
describe('Utils:formatTime', () => {
|
||||
const d = new Date('2018-07-13 17:54:01') // "2018-07-13 17:54:01"
|
||||
const retrofit = 5 * 1000
|
||||
|
||||
it('ten digits timestamp', () => {
|
||||
expect(formatTime((d / 1000).toFixed(0))).toBe('7月13日17时54分')
|
||||
})
|
||||
it('test now', () => {
|
||||
expect(formatTime(+new Date() - 1)).toBe('刚刚')
|
||||
})
|
||||
it('less two minute', () => {
|
||||
expect(formatTime(+new Date() - 60 * 2 * 1000 + retrofit)).toBe('2分钟前')
|
||||
})
|
||||
it('less two hour', () => {
|
||||
expect(formatTime(+new Date() - 60 * 60 * 2 * 1000 + retrofit)).toBe('2小时前')
|
||||
})
|
||||
it('less one day', () => {
|
||||
expect(formatTime(+new Date() - 60 * 60 * 24 * 1 * 1000)).toBe('1天前')
|
||||
})
|
||||
it('more than one day', () => {
|
||||
expect(formatTime(d)).toBe('7月13日17时54分')
|
||||
})
|
||||
it('format', () => {
|
||||
expect(formatTime(d, '{y}-{m}-{d} {h}:{i}')).toBe('2018-07-13 17:54')
|
||||
expect(formatTime(d, '{y}-{m}-{d}')).toBe('2018-07-13')
|
||||
expect(formatTime(d, '{y}/{m}/{d} {h}-{i}')).toBe('2018/07/13 17-54')
|
||||
})
|
||||
})
|
27
tests/unit/utils/parseTime.spec.js
Normal file
27
tests/unit/utils/parseTime.spec.js
Normal file
@@ -0,0 +1,27 @@
|
||||
import { parseTime } from '@/utils/index.js'
|
||||
describe('Utils:parseTime', () => {
|
||||
const d = new Date('2018-07-13 17:54:01') // "2018-07-13 17:54:01"
|
||||
it('timestamp', () => {
|
||||
expect(parseTime(d)).toBe('2018-07-13 17:54:01')
|
||||
})
|
||||
it('ten digits timestamp', () => {
|
||||
expect(parseTime((d / 1000).toFixed(0))).toBe('2018-07-13 17:54:01')
|
||||
})
|
||||
it('new Date', () => {
|
||||
expect(parseTime(new Date(d))).toBe('2018-07-13 17:54:01')
|
||||
})
|
||||
it('format', () => {
|
||||
expect(parseTime(d, '{y}-{m}-{d} {h}:{i}')).toBe('2018-07-13 17:54')
|
||||
expect(parseTime(d, '{y}-{m}-{d}')).toBe('2018-07-13')
|
||||
expect(parseTime(d, '{y}/{m}/{d} {h}-{i}')).toBe('2018/07/13 17-54')
|
||||
})
|
||||
it('get the day of the week', () => {
|
||||
expect(parseTime(d, '{a}')).toBe('五') // 星期五
|
||||
})
|
||||
it('get the day of the week', () => {
|
||||
expect(parseTime(+d + 1000 * 60 * 60 * 24 * 2, '{a}')).toBe('日') // 星期日
|
||||
})
|
||||
it('empty argument', () => {
|
||||
expect(parseTime()).toBeNull()
|
||||
})
|
||||
})
|
28
tests/unit/utils/validate.spec.js
Normal file
28
tests/unit/utils/validate.spec.js
Normal file
@@ -0,0 +1,28 @@
|
||||
import { validUsername, validateURL, validateLowerCase, validateUpperCase, validateAlphabets } from '@/utils/validate.js'
|
||||
describe('Utils:validate', () => {
|
||||
it('validUsername', () => {
|
||||
expect(validUsername('admin')).toBe(true)
|
||||
expect(validUsername('editor')).toBe(true)
|
||||
expect(validUsername('xxxx')).toBe(false)
|
||||
})
|
||||
it('validateURL', () => {
|
||||
expect(validateURL('https://github.com/PanJiaChen/vue-element-admin')).toBe(true)
|
||||
expect(validateURL('http://github.com/PanJiaChen/vue-element-admin')).toBe(true)
|
||||
expect(validateURL('github.com/PanJiaChen/vue-element-admin')).toBe(false)
|
||||
})
|
||||
it('validateLowerCase', () => {
|
||||
expect(validateLowerCase('abc')).toBe(true)
|
||||
expect(validateLowerCase('Abc')).toBe(false)
|
||||
expect(validateLowerCase('123abc')).toBe(false)
|
||||
})
|
||||
it('validateUpperCase', () => {
|
||||
expect(validateUpperCase('ABC')).toBe(true)
|
||||
expect(validateUpperCase('Abc')).toBe(false)
|
||||
expect(validateUpperCase('123ABC')).toBe(false)
|
||||
})
|
||||
it('validateAlphabets', () => {
|
||||
expect(validateAlphabets('ABC')).toBe(true)
|
||||
expect(validateAlphabets('Abc')).toBe(true)
|
||||
expect(validateAlphabets('123aBC')).toBe(false)
|
||||
})
|
||||
})
|
Reference in New Issue
Block a user