From c990b3434db86be4ca73b578b2bc6710fb7065b9 Mon Sep 17 00:00:00 2001 From: Alexander Fedyashov <af@e42.guru> Date: Thu, 31 Aug 2017 18:51:47 +0300 Subject: [PATCH] fix(shallow): fix shallow test util --- test/utils/shallow.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/test/utils/shallow.js b/test/utils/shallow.js index 844cbb33fa..1f8f2fb9fa 100644 --- a/test/utils/shallow.js +++ b/test/utils/shallow.js @@ -2,17 +2,20 @@ import { ShallowWrapper } from 'enzyme' const meetsName = (wrapper, name) => name === wrapper.type().name -const dive = wrapper => { +const dive = (wrapper) => { + /* eslint-disable no-param-reassign */ if (meetsName(wrapper, 'refHOC')) wrapper = wrapper.dive() if (meetsName(wrapper, 'Ref')) wrapper = wrapper.dive() + /* eslint-enable */ return wrapper } -class Wrapper extends ShallowWrapper { - shallow(options) { - return this.single('shallow', n => dive(new Wrapper(n, null, options))) - } +// Heads up! This monkey patch overrides behaviour of shallow() method of Enzyme +const shallowMethod = ShallowWrapper.prototype.shallow + +ShallowWrapper.prototype.shallow = function (...args) { + return dive(shallowMethod.apply(this, ...args)) } -export default (...args) => dive(new Wrapper(...args)) +export default (...args) => dive(new ShallowWrapper(...args))