Skip to content

Commit 3b00404

Browse files
committed
Merge branch 'aa-change-implementation-requiredMeasures' of https://github.com/adnasa/react-perf-devtool into adnasa-aa-change-implementation-requiredMeasures
2 parents 5093f95 + 44ecf4c commit 3b00404

File tree

3 files changed

+50
-22
lines changed

3 files changed

+50
-22
lines changed

__tests__/logMeasures.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ function logToConsole({ port, components }, measures) {
4949
if (!components) {
5050
logMeasures(measures)
5151
} else if (typeof components !== undefined && Array.isArray(components)) {
52-
var stats = getRequiredMeasures(components, measures)
52+
var stats = getMeasuresByComponentName(components, measures)
5353

5454
logMeasures(stats)
5555
}
5656
}
5757

58-
function getRequiredMeasures(components, measures) {
58+
function getMeasuresByComponentName(components, measures) {
5959
var requiredMeasures = []
6060

6161
if (!Array.isArray(components)) {

__tests__/registerObserver.test.js

+44-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
var { registerObserver } = require('../src/npm/hook')
1+
var {
2+
registerObserver,
3+
getMeasuresByComponentName
4+
} = require('../src/npm/hook')
25

36
describe('Register Observer', () => {
47
describe('The register observer function shouldnt crash', () => {
@@ -32,3 +35,43 @@ describe('Register Observer', () => {
3235
})
3336
})
3437
})
38+
39+
describe('utils', () => {
40+
let componentNames
41+
let measures
42+
let requiredMeasures
43+
describe('getMeasuresByComponentName', () => {
44+
describe('with matching `componentNames`', () => {
45+
beforeEach(() => {
46+
componentNames = ['foo']
47+
measures = [
48+
{
49+
componentName: 'foo'
50+
}
51+
]
52+
requiredMeasures = getMeasuresByComponentName(componentNames, measures)
53+
})
54+
it('should return a list of required measure', () => {
55+
expect(requiredMeasures).toEqual([
56+
{
57+
componentName: 'foo'
58+
}
59+
])
60+
})
61+
})
62+
describe('without matching `componentNames`', () => {
63+
beforeEach(() => {
64+
componentNames = ['foo']
65+
measures = [
66+
{
67+
componentName: 'bar'
68+
}
69+
]
70+
requiredMeasures = getMeasuresByComponentName(componentNames, measures)
71+
})
72+
it('should return a list of empty measure', () => {
73+
expect(requiredMeasures).toEqual([])
74+
})
75+
})
76+
})
77+
})

src/npm/hook.js

+4-19
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,7 @@ const logToConsole = ({ port, components }, measures) => {
7171
if (!components) {
7272
logMeasures(port, measures)
7373
} else if (typeof components !== undefined && Array.isArray(components)) {
74-
const requiredMeasures = getRequiredMeasures(components, measures)
75-
76-
logMeasures(port, requiredMeasures)
74+
logMeasures(port, getMeasuresByComponentName(components, measures))
7775
}
7876
}
7977

@@ -131,20 +129,7 @@ const send = (data, port) => {
131129
)
132130
}
133131

134-
const getRequiredMeasures = (components, measures) => {
135-
let requiredMeasures = []
136-
137-
if (!Array.isArray(components)) {
138-
components = [components]
139-
}
140-
141-
measures.forEach(measure => {
142-
if (components.includes(measure.componentName)) {
143-
requiredMeasures.push(measure)
144-
}
145-
})
146-
147-
return requiredMeasures
148-
}
132+
const getMeasuresByComponentName = (componentNames, measures) =>
133+
measures.filter(measure => componentNames.includes(measure.componentName))
149134

150-
export { registerObserver }
135+
export { registerObserver, getMeasuresByComponentName }

0 commit comments

Comments
 (0)