Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## users/users-repository.js ####################
- const users = new Map()
- exports.create = user => users.set(user.username, user)
- exports.read = username => users.get(username)
- ## users/users.js ###############################
- const usersRepo = require('./users-repository')
- exports.create = user => {
- if (!user.username || !user.email || !user.hashPassword || user.hashPassword.length < 8)
- return false
- usersRepo.create(user)
- return true
- }
- exports.read = username => usersRepo.read(username)
- ## users/users.spec.js ##########################
- const assert = require('assert')
- const users = require('./users')
- assert(users.create({username: 'bob', email: 'example@example.com', hashPassword: 'A$%Hsdf&/F'}))
- const user = users.read('bob')
- assert(user)
- assert.equal(user.username, 'bob')
- assert.equal(user.email, 'example@example.com')
- assert.equal(user.hashPassword, 'A$%Hsdf&/F')
- assert(!users.create({username: 'bob', hashPassword: 'A$%Hsdf&/F'}))
- assert(!users.create({username: 'bob', email: 'example@example.com', hashPassword: 'HHR$'}))
- ## users/index.js ###############################
- const users = require('./users')
- module.exports = users
- ## app.js #######################################
- const users = require('./users')
- if (!users.create({username: process.env.USERNAME, email: process.env.EMAIL, hashPassword: process.env.HASH_PASSWORD}))
- throw new Error('Invalid user\'s information')
- console.log(users.read(process.env.USERNAME))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement