1 | 'use strict'
|
2 |
|
3 | const test = require('tap').test
|
4 | const analyseHandles = require('../analysis/analyse-handles.js')
|
5 | const generateProcessStat = require('./generate-process-stat.js')
|
6 |
|
7 | test('analyse handles - flat', function (t) {
|
8 | const goodHandles = generateProcessStat({
|
9 | handles: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100]
|
10 | }, 0)
|
11 | t.strictEqual(analyseHandles(goodHandles, []), false)
|
12 |
|
13 | t.end()
|
14 | })
|
15 |
|
16 | test('analyse handles - expected data', function (t) {
|
17 | for (const noise of [0, 10, 30]) {
|
18 | const goodHandles = generateProcessStat({
|
19 | handles: [100, 100, 120, 90, 110, 100, 80, 110, 90, 110]
|
20 | }, noise)
|
21 | t.strictEqual(analyseHandles(goodHandles, []), false)
|
22 |
|
23 | const badHandles = generateProcessStat({
|
24 | handles: [
|
25 | 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 100,
|
26 | 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 100,
|
27 | 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 100,
|
28 | 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 100,
|
29 | 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 100
|
30 | ]
|
31 | }, noise)
|
32 | t.strictEqual(analyseHandles(badHandles, []), true)
|
33 | }
|
34 |
|
35 | t.end()
|
36 | })
|
37 |
|
38 | test('analyse handles - almost constant', function (t) {
|
39 | const goodHandles = generateProcessStat({
|
40 | handles: [
|
41 | 100, 100, 100, 100, 100, 100, 100, 100, 100,
|
42 | 101, 101, 101, 101, 101, 101, 101, 101, 101]
|
43 | }, 0)
|
44 | t.strictEqual(analyseHandles(goodHandles, []), false)
|
45 |
|
46 | t.end()
|
47 | })
|