UNPKG

887 BJavaScriptView Raw
1// @flow
2
3// const expect = require('expect');
4const uuid = require('uuid');
5const { ObservedRemoveMap } = require('../src');
6const { generateValue } = require('./lib/values');
7
8const memoryDelta = (start:Object) => {
9 const end = process.memoryUsage();
10 const delta = {};
11 Object.keys(end).forEach((key) => {
12 const d = end[key] - start[key];
13 delta[key] = Math.round(d / 1024 / 1024 * 100) / 100;
14 });
15 return delta;
16};
17
18describe('Map Memory Test', () => {
19 test('Set and delete values', () => {
20 const map = new ObservedRemoveMap();
21 const startMemoryUsage = process.memoryUsage();
22 for (let i = 0; i < 100000; i += 1) {
23 const key = uuid.v4();
24 const value = generateValue();
25 map.set(key, value);
26 if (i % 1000 === 1) {
27 map.publish();
28 }
29 }
30 console.log(JSON.stringify(memoryDelta(startMemoryUsage), null, 2));
31 });
32});
33