-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
43 lines (39 loc) · 1.39 KB
/
index.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 firebaseConfig = require('./fb_configs.js');
const firebase = require('firebase');
const asyncq = require('async-q');
const fs = require('fs');
const initializeDb = require('./tests/initializeDb.js');
const presenseTest = require('./tests/presense.js');
const clientFanOutTest = require('./tests/client_fanout.js');
const fbFunctionFanout = require('./tests/function_fanout.js');
const MAX_USER = 40;
const app = firebase.initializeApp(firebaseConfig);
let users = [];
for (let i = 0; i < MAX_USER; i++) {
let user_id = 'user_';
if (i < 9) {
user_id = 'user_0' + (i + 1);
} else {
user_id = 'user_' + (i + 1);
}
users[i] = {
id: user_id
};
}
asyncq.series([
() => { return initializeDb(users) },
() => { return presenseTest(users) },
() => { return clientFanOutTest(users) },
() => { return fbFunctionFanout(users) }
]).then(results => {
// console.log(`\n\n tests results: \n\n ${JSON.stringify(results, null, 2)}`)
const json = JSON.stringify(results, null, 2);
const d = new Date();
const file_name = `results_${d.getFullYear()}${d.getMonth() + 1}${d.getDate()}_${d.getHours()}${d.getMinutes()}${d.getSeconds()}_${d.getTime()}.json`;
fs.writeFile(file_name, json, 'utf8', () => {
console.log(`test logs filename: ${file_name}`);
});
}).done(() => {
console.log('\n all tests are done \n');
app.delete();
})