From 3d52cba7f84310818389ecc02c1a2a86d19e7934 Mon Sep 17 00:00:00 2001 From: geido Date: Thu, 31 Mar 2022 14:54:25 +0000 Subject: [PATCH] Test buttons behavior --- .../src/explore/components/SaveModal.test.jsx | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/superset-frontend/src/explore/components/SaveModal.test.jsx b/superset-frontend/src/explore/components/SaveModal.test.jsx index b25efdb773a8b..b3a7ac3d58b17 100644 --- a/superset-frontend/src/explore/components/SaveModal.test.jsx +++ b/superset-frontend/src/explore/components/SaveModal.test.jsx @@ -95,9 +95,36 @@ describe('SaveModal', () => { expect(wrapper.find(Radio)).toHaveLength(2); const footerWrapper = shallow(wrapper.find(StyledModal).props().footer); + expect(footerWrapper.find(Button)).toHaveLength(3); }); + it('renders the right footer buttons when an existing dashboard', () => { + const wrapper = getWrapper(); + const footerWrapper = shallow(wrapper.find(StyledModal).props().footer); + const saveAndGoDash = footerWrapper + .find('#btn_modal_save_goto_dash') + .getElement(); + const save = footerWrapper.find('#btn_modal_save').getElement(); + expect(save.props.children).toBe('Save'); + expect(saveAndGoDash.props.children).toBe('Save & go to dashboard'); + }); + + it('renders the right footer buttons when a new dashboard', () => { + const wrapper = getWrapper(); + wrapper.setState({ + saveToDashboardId: null, + newDashboardName: 'Test new dashboard', + }); + const footerWrapper = shallow(wrapper.find(StyledModal).props().footer); + const saveAndGoDash = footerWrapper + .find('#btn_modal_save_goto_dash') + .getElement(); + const save = footerWrapper.find('#btn_modal_save').getElement(); + expect(save.props.children).toBe('Save to new dashboard'); + expect(saveAndGoDash.props.children).toBe('Save & go to new dashboard'); + }); + it('overwrite radio button is disabled for new slice', () => { const wrapper = getWrapper(); wrapper.setProps({ slice: null });