octo-deno/lib/make/time.js

46 lines
952 B
JavaScript
Raw Normal View History

2017-07-06 14:18:22 +00:00
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
const make = require('../make')
const random = require('../random')
class time extends make {
static unit () {
2017-07-06 14:18:22 +00:00
return random.pick([
's', 'ms'
])
}
2018-03-21 23:17:33 +00:00
static datetime () {
switch (random.number(2)) {
case 0:
return new Date(new Date().getTime() + random.number())
case 1:
return new Date(new Date().getTime() - random.number())
}
}
static date () {
return time.datetime().toDateString()
}
static time () {
return time.datetime().toTimeString()
}
static iso () {
return time.datetime().toISOString()
}
static epoch () {
2018-04-26 17:04:04 +00:00
return Math.floor(time.datetime() / 1000)
2018-03-21 23:17:33 +00:00
}
static any () {
2018-03-21 23:17:33 +00:00
return make.number.any() + time.unit()
2017-07-06 14:18:22 +00:00
}
}
module.exports = time