From ddbcf5b0e9a3ea7aed4d22e8438d9a75acd26275 Mon Sep 17 00:00:00 2001
From: Agata Stawarz <47450693+agatapst@users.noreply.github.com>
Date: Mon, 11 Jan 2021 20:58:28 +0100
Subject: [PATCH] fix: Refresh Interval Modal dropdown (#12406)
---
.../components/RefreshIntervalModal_spec.jsx | 12 ++++++++----
.../dashboard/components/RefreshIntervalModal.tsx | 8 +++++++-
2 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.jsx b/superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.jsx
index e6210260d1..7a2c6c7b76 100644
--- a/superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.jsx
+++ b/superset-frontend/spec/javascripts/dashboard/components/RefreshIntervalModal_spec.jsx
@@ -17,7 +17,7 @@
* under the License.
*/
import React from 'react';
-import { mount, shallow } from 'enzyme';
+import { mount } from 'enzyme';
import ModalTrigger from 'src/components/ModalTrigger';
import RefreshIntervalModal from 'src/dashboard/components/RefreshIntervalModal';
@@ -66,11 +66,15 @@ describe('RefreshIntervalModal', () => {
refreshWarning: 'Show warning',
};
- const wrapper = shallow();
+ const wrapper = getMountWrapper(props);
+ wrapper.find('span[role="button"]').simulate('click');
+
wrapper.instance().handleFrequencyChange({ value: 30 });
- expect(wrapper.find(ModalTrigger).dive().find(Alert)).toExist();
+ wrapper.update();
+ expect(wrapper.find(ModalTrigger).find(Alert)).toExist();
wrapper.instance().handleFrequencyChange({ value: 3601 });
- expect(wrapper.find(ModalTrigger).dive().find(Alert)).not.toExist();
+ wrapper.update();
+ expect(wrapper.find(ModalTrigger).find(Alert)).not.toExist();
});
});
diff --git a/superset-frontend/src/dashboard/components/RefreshIntervalModal.tsx b/superset-frontend/src/dashboard/components/RefreshIntervalModal.tsx
index a4799d662b..0f77f00fbf 100644
--- a/superset-frontend/src/dashboard/components/RefreshIntervalModal.tsx
+++ b/superset-frontend/src/dashboard/components/RefreshIntervalModal.tsx
@@ -38,6 +38,12 @@ export const options = [
[86400, t('24 hours')],
].map(o => ({ value: o[0], label: o[1] }));
+const StyledModalTrigger = styled(ModalTrigger)`
+ .ant-modal-body {
+ overflow: visible;
+ }
+`;
+
const RefreshWarningContainer = styled.div`
margin-top: ${({ theme }) => theme.gridUnit * 6}px;
`;
@@ -103,7 +109,7 @@ class RefreshIntervalModal extends React.PureComponent<
!!refreshFrequency && !!refreshWarning && refreshFrequency < refreshLimit;
return (
-