Skip to content

Commit 92a5c78

Browse files
authored
Merge pull request learningequality#3004 from MisRob/kds-kmodal-channeledit-stagingtreepage
KDS to Studio: KModal on staging tree page
2 parents 138f94b + d06d9b0 commit 92a5c78

2 files changed

Lines changed: 60 additions & 102 deletions

File tree

contentcuration/contentcuration/frontend/channelEdit/pages/StagingTreePage/index.spec.js

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -166,10 +166,6 @@ const getDeployDialogStagedResources = wrapper => {
166166
return wrapper.find('[data-test="deploy-dialog-staged-resources"]');
167167
};
168168

169-
const getDeployBtn = wrapper => {
170-
return wrapper.find('[data-test="deploy-btn"]');
171-
};
172-
173169
describe('StagingTreePage', () => {
174170
it('renders back to viewing link leading to a root tree page in the toolbar', () => {
175171
const wrapper = initWrapper();
@@ -382,21 +378,17 @@ describe('StagingTreePage', () => {
382378
expect(removeMultipleSpaces(text)).toBe('Total size: 8 MB (+ 8 MB)');
383379
});
384380

385-
it('summary details dialog is not visible by default', () => {
386-
expect(getSummaryDetailsDialog(wrapper).isVisible()).toBe(false);
387-
});
388-
389381
it('opens summary details dialog when view summary button is clicked', () => {
382+
expect(getSummaryDetailsDialog(wrapper).exists()).toBe(false);
390383
getDisplaySummaryDetailsDialogBtn(wrapper).trigger('click');
391-
expect(getSummaryDetailsDialog(wrapper).isVisible()).toBe(true);
392-
});
393384

394-
it('deploy dialog is not visible by default', () => {
395-
expect(getDeployDialog(wrapper).isVisible()).toBe(false);
385+
expect(getSummaryDetailsDialog(wrapper).isVisible()).toBe(true);
396386
});
397387

398388
it('opens deploy dialog when deploy button is clicked', () => {
389+
expect(getDeployDialog(wrapper).exists()).toBe(false);
399390
getDisplayDeployDialogBtn(wrapper).trigger('click');
391+
400392
expect(getDeployDialog(wrapper).isVisible()).toBe(true);
401393
});
402394

@@ -416,12 +408,13 @@ describe('StagingTreePage', () => {
416408
});
417409

418410
it('dispatches deploy channel action on deploy channel button click', () => {
419-
getDeployBtn(wrapper).trigger('click');
411+
getDeployDialog(wrapper).vm.$emit('submit');
412+
420413
expect(mockDeployCurrentChannel).toHaveBeenCalledTimes(1);
421414
});
422415

423416
it('redirects to a root tree page after deploy channel button click', async () => {
424-
getDeployBtn(wrapper).trigger('click');
417+
getDeployDialog(wrapper).vm.$emit('submit');
425418
await flushPromises();
426419

427420
expect(wrapper.vm.$router.currentRoute.name).toBe(RouteNames.TREE_VIEW);

contentcuration/contentcuration/frontend/channelEdit/pages/StagingTreePage/index.vue

Lines changed: 53 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -170,101 +170,66 @@
170170
</VFlex>
171171

172172
<VFlex class="bottom-bar-btns">
173-
<VDialog
174-
v-model="displaySummaryDetailsDialog"
175-
width="500"
173+
<VBtn
174+
flat
175+
data-test="display-summary-details-dialog-btn"
176+
@click="displaySummaryDetailsDialog = true"
176177
>
177-
<template v-slot:activator="{ on }">
178-
<VBtn
179-
flat
180-
data-test="display-summary-details-dialog-btn"
181-
v-on="on"
182-
>
183-
{{ $tr('openSummaryDetailsDialogBtn') }}
184-
</VBtn>
185-
</template>
186-
187-
<VCard data-test="summary-details-dialog">
188-
<VCardTitle primary-title class="font-weight-bold title">
189-
{{ $tr('summaryDetailsDialogTitle') }}
190-
</VCardTitle>
191-
<VCardText>
192-
<DiffTable :stagingDiff="stagingDiff" @reload="reloadCurrentChannelStagingDiff" />
193-
</VCardText>
194-
<VCardActions>
195-
<VSpacer />
196-
<VBtn
197-
color="primary"
198-
@click="displaySummaryDetailsDialog = false"
199-
>
200-
{{ $tr('closeSummaryDetailsDialogBtn') }}
201-
</VBtn>
202-
</VCardActions>
203-
</VCard>
204-
</VDialog>
178+
{{ $tr('openSummaryDetailsDialogBtn') }}
179+
</VBtn>
205180

206-
<VDialog
207-
v-model="displayDeployDialog"
208-
width="500"
181+
<VBtn
182+
color="primary"
183+
data-test="display-deploy-dialog-btn"
184+
@click="displayDeployDialog = true"
209185
>
210-
<template v-slot:activator="{ on }">
211-
<VBtn
212-
color="primary"
213-
data-test="display-deploy-dialog-btn"
214-
v-on="on"
215-
>
216-
{{ $tr('deployChannel') }}
217-
</VBtn>
218-
</template>
186+
{{ $tr('deployChannel') }}
187+
</VBtn>
188+
</VFLex>
189+
</VLayout>
190+
</BottomBar>
191+
192+
<KModal
193+
v-if="displaySummaryDetailsDialog"
194+
data-test="summary-details-dialog"
195+
:title="$tr('summaryDetailsDialogTitle')"
196+
:cancelText="$tr('closeSummaryDetailsDialogBtn')"
197+
@cancel="displaySummaryDetailsDialog = false"
198+
>
199+
<DiffTable :stagingDiff="stagingDiff" @reload="reloadCurrentChannelStagingDiff" />
200+
</KModal>
219201

220-
<VCard data-test="deploy-dialog">
221-
<VCardTitle primary-title class="font-weight-bold title">
222-
{{ $tr('deployChannel') }}
223-
</VCardTitle>
224-
<VCardText>
225-
<p>{{ $tr('deployDialogDescription') }}</p>
202+
<KModal
203+
v-if="displayDeployDialog"
204+
data-test="deploy-dialog"
205+
:title="$tr('deployChannel')"
206+
:submitText="$tr('confirmDeployBtn')"
207+
:cancelText="$tr('cancelDeployBtn')"
208+
@submit="onDeployChannelClick"
209+
@cancel="displayDeployDialog = false"
210+
>
211+
<p>{{ $tr('deployDialogDescription') }}</p>
226212

227-
<VLayout data-test="deploy-dialog-live-resources">
228-
<VFlex xs4 class="font-weight-bold">
229-
{{ $tr('liveResources') }}:
230-
</VFlex>
231-
<VFlex>
232-
{{ $tr('topicsCount', { count: topicsCountLive }) }},
233-
{{ $tr('resourcesCount', { count: resourcesCountLive }) }}
234-
</VFlex>
235-
</VLayout>
213+
<VLayout data-test="deploy-dialog-live-resources">
214+
<VFlex xs4 class="font-weight-bold">
215+
{{ $tr('liveResources') }}:
216+
</VFlex>
217+
<VFlex>
218+
{{ $tr('topicsCount', { count: topicsCountLive }) }},
219+
{{ $tr('resourcesCount', { count: resourcesCountLive }) }}
220+
</VFlex>
221+
</VLayout>
236222

237-
<VLayout data-test="deploy-dialog-staged-resources">
238-
<VFlex xs4 class="font-weight-bold">
239-
{{ $tr('stagedResources') }}:
240-
</VFlex>
241-
<VFlex>
242-
{{ $tr('topicsCount', { count: topicsCountStaged }) }},
243-
{{ $tr('resourcesCount', { count: resourcesCountStaged }) }}
244-
</VFlex>
245-
</VLayout>
246-
</VCardText>
247-
<VCardActions>
248-
<VSpacer />
249-
<VBtn
250-
flat
251-
@click="displayDeployDialog = false"
252-
>
253-
{{ $tr('cancelDeployBtn') }}
254-
</VBtn>
255-
<VBtn
256-
color="primary"
257-
data-test="deploy-btn"
258-
@click="onDeployChannelClick"
259-
>
260-
{{ $tr('confirmDeployBtn') }}
261-
</VBtn>
262-
</VCardActions>
263-
</VCard>
264-
</VDialog>
265-
</VFLex>
223+
<VLayout data-test="deploy-dialog-staged-resources">
224+
<VFlex xs4 class="font-weight-bold">
225+
{{ $tr('stagedResources') }}:
226+
</VFlex>
227+
<VFlex>
228+
{{ $tr('topicsCount', { count: topicsCountStaged }) }},
229+
{{ $tr('resourcesCount', { count: resourcesCountStaged }) }}
230+
</VFlex>
266231
</VLayout>
267-
</BottomBar>
232+
</KModal>
268233
</template>
269234
</div>
270235

0 commit comments

Comments
 (0)