-
Notifications
You must be signed in to change notification settings - Fork 20
/
Copy pathusers.js
43 lines (35 loc) · 999 Bytes
/
users.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const { Users } = require('../db/models')
const { genRandomUsername } = require('../utils/username')
async function createAnonUser() {
return await Users.create({
username: genRandomUsername(),
});
return user
}
async function getUserById(id) {
if (!id) throw new Error('user id not provided')
if (typeof id !== 'number') throw new Error('user id should be integer')
return await Users.findOne({ where: { id } })
}
async function getUserByUsername(username) {
return await Users.findOne({ where: { username } })
}
module.exports = {
createAnonUser,
getUserById,
getUserByUsername,
}
/* Test Code */
/*
async function task () {
console.log(await createAnonUser())
console.log('---------------------')
console.log(await createAnonUser())
console.log('---------------------')
console.log(await createAnonUser())
console.log('---------------------')
console.log(await createAnonUser())
console.log('---------------------')
}
task()
*/