@@ -10,13 +10,19 @@ jest.enableAutomock()
1010jest.disableAutomock()
1111jest.mock('./foo')
1212jest.mock('./foo/bar', () => 'bar')
13+ jest.unmock('./bar/foo').dontMock('./bar/bar')
14+ jest.deepUnmock('./foo')
15+ jest.mock('./foo').mock('./bar')
1316const func = () => {
1417 const bar = 'bar'
1518 console.log(bar)
1619 jest.unmock('./foo')
1720 jest.mock('./bar')
1821 jest.mock('./bar/foo', () => 'foo')
1922 jest.unmock('./foo/bar')
23+ jest.unmock('./bar/foo').dontMock('./bar/bar')
24+ jest.deepUnmock('./bar')
25+ jest.mock('./foo').mock('./bar')
2026}
2127const func2 = () => {
2228 const bar = 'bar'
@@ -25,6 +31,9 @@ const func2 = () => {
2531 jest.unmock('./foo/bar')
2632 jest.mock('./bar/foo', () => 'foo')
2733 jest.unmock('./foo')
34+ jest.unmock('./bar/foo').dontMock('./bar/bar')
35+ jest.deepUnmock('./bar')
36+ jest.mock('./foo').mock('./bar')
2837}
2938`
3039const logger = testing . createLoggerMock ( )
@@ -41,30 +50,39 @@ describe('hoisting', () => {
4150 expect ( typeof hoist . factory ) . toBe ( 'function' )
4251 } )
4352
44- it ( 'should hoist jest mock() and unmock() statements ' , ( ) => {
53+ it ( 'should hoist jest. mock(), unmock(), disableAutomock() and enableAutomock() ' , ( ) => {
4554 const out = transpile ( CODE_WITH_HOISTING )
4655 expect ( out . outputText ) . toMatchInlineSnapshot ( `
4756 "jest.enableAutomock();
4857 jest.disableAutomock();
4958 jest.mock('./foo');
5059 jest.mock('./foo/bar', function () { return 'bar'; });
60+ jest.deepUnmock('./foo');
61+ jest.mock('./foo').mock('./bar');
5162 var foo = 'foo';
5263 console.log(foo);
64+ jest.unmock('./bar/foo').dontMock('./bar/bar');
5365 var func = function () {
5466 jest.unmock('./foo');
5567 jest.mock('./bar');
5668 jest.mock('./bar/foo', function () { return 'foo'; });
5769 jest.unmock('./foo/bar');
70+ jest.deepUnmock('./bar');
71+ jest.mock('./foo').mock('./bar');
5872 var bar = 'bar';
5973 console.log(bar);
74+ jest.unmock('./bar/foo').dontMock('./bar/bar');
6075 };
6176 var func2 = function () {
6277 jest.mock('./bar');
6378 jest.unmock('./foo/bar');
6479 jest.mock('./bar/foo', function () { return 'foo'; });
6580 jest.unmock('./foo');
81+ jest.deepUnmock('./bar');
82+ jest.mock('./foo').mock('./bar');
6683 var bar = 'bar';
6784 console.log(bar);
85+ jest.unmock('./bar/foo').dontMock('./bar/bar');
6886 };
6987 "
7088 ` )
0 commit comments