Skip to content

Commit 0e50a66

Browse files
committed
failing tests for wrapping
1 parent 9e4e3fe commit 0e50a66

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

community/memoize-one/src/5.0.0/transform.spec.ts

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,86 @@ describe('memoize-one@5.0.0 transform', () => {
3434
`),
3535
);
3636
});
37+
38+
it('should wrap inline equality functions', () => {
39+
const result = applyTransform(
40+
transformer,
41+
format(`
42+
import memoize from 'memoize-one';
43+
44+
function add(a: number, b: number) {
45+
return a + b;
46+
}
47+
48+
const memoized = memoize(add, function isEqual(a, b) {
49+
return a === b;
50+
});
51+
`),
52+
{ parser: 'tsx' },
53+
);
54+
55+
expect(result).toEqual(
56+
format(`
57+
import memoize from 'memoize-one';
58+
59+
function add(a: number, b: number) {
60+
return a + b;
61+
}
62+
63+
const memoized = memoize(add, (newArgs, lastArgs) => {
64+
if (newArgs.length !== lastArgs.length) {
65+
return false;
66+
}
67+
68+
function isEqual(a, b) {
69+
return a === b;
70+
}
71+
72+
return newArgs.every((newArg, index) => isEqual(newArg, lastArgs[index]));
73+
});
74+
`),
75+
);
76+
});
77+
78+
it('should wrap references', () => {
79+
const result = applyTransform(
80+
transformer,
81+
format(`
82+
import memoize from 'memoize-one';
83+
84+
function isEqual(a, b) {
85+
return a === b;
86+
}
87+
88+
function add(a: number, b: number) {
89+
return a + b;
90+
}
91+
92+
const memoized = memoize(add, isEqual);
93+
`),
94+
{ parser: 'tsx' },
95+
);
96+
97+
expect(result).toEqual(
98+
format(`
99+
import memoize from "memoize-one";
100+
101+
function isEqual(a, b) {
102+
return a === b;
103+
}
104+
105+
function add(a: number, b: number) {
106+
return a + b;
107+
}
108+
109+
const memoized = memoize(add, (newArgs, lastArgs) => {
110+
if (newArgs.length !== lastArgs.length) {
111+
return false;
112+
}
113+
114+
return newArgs.every((newArg, index) => isEqual(newArg, lastArgs[index]));
115+
});
116+
`),
117+
);
118+
});
37119
});

0 commit comments

Comments
 (0)