UNPKG

1.25 kBJavaScriptView Raw
1
2var events = require('events');
3var passreset = require('../lib');
4
5module.exports = exports = new events.EventEmitter();
6
7passreset.lookupUsers(function(login, callback) {
8 callback = async(callback);
9 switch (login) {
10 case 'valid':
11 callback(null, {
12 email: 'foo1@example.com',
13 users: [{
14 id: 123,
15 name: 'foo'
16 }]
17 });
18 break;
19 case 'multivalid':
20 callback(null, {
21 email: 'foo2@example.com',
22 users: [{
23 id: 234,
24 name: 'bar'
25 }, {
26 id: 345,
27 name: 'baz'
28 }]
29 });
30 break;
31 case 'invalid':
32 callback(null, false);
33 break;
34 default:
35 callback('Invalid test login given');
36 break;
37 }
38});
39
40passreset.sendEmail(function(email, resets, callback) {
41 exports.emit('sendEmail', email, resets);
42 async(callback)(null, true);
43});
44
45passreset.setPassword(function(id, password, callback) {
46 callback = async(callback);
47 switch (password) {
48 case 'short':
49 callback(null, false, 'Password is too short');
50 break;
51 case 'goodPassword':
52 callback(null, true);
53 break;
54 default:
55 callback('Invalid test password given');
56 break;
57 }
58});
59
60function async(func) {
61 return function() {
62 var args = arguments;
63 process.nextTick(function() {
64 func.apply(this, args);
65 });
66 };
67}
68