Skip to content

Commit cf4a502

Browse files
[BUGFIX] Rafraîchir la page lorsque le candidat clique sur le bouton lors d'un signalement en certification (PIX-14959).
#10379
2 parents 832b315 + b65f3df commit cf4a502

File tree

5 files changed

+33
-31
lines changed

5 files changed

+33
-31
lines changed

mon-pix/app/components/assessments/live-alert.gjs

+6-3
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,16 @@ import PixButton from '@1024pix/pix-ui/components/pix-button';
22
import PixIcon from '@1024pix/pix-ui/components/pix-icon';
33
import PixMessage from '@1024pix/pix-ui/components/pix-message';
44
import { action } from '@ember/object';
5+
import { service } from '@ember/service';
56
import Component from '@glimmer/component';
67
import { t } from 'ember-intl';
78

89
export default class LiveAlert extends Component {
10+
@service router;
11+
912
@action
10-
reloadAssessment() {
11-
this.args.assessment.reload();
13+
refreshPage() {
14+
this.router.refresh();
1215
}
1316

1417
<template>
@@ -20,7 +23,7 @@ export default class LiveAlert extends Component {
2023
<PixButton
2124
@variant="tertiary"
2225
@loadingColor="grey"
23-
@triggerAction={{this.reloadAssessment}}
26+
@triggerAction={{this.refreshPage}}
2427
class="refresh-information-live-alert__button"
2528
>
2629
<PixIcon @name="refresh" @ariaHidden={{true}} class="refresh-information-live-alert__icon" />

mon-pix/app/components/feedback-panel-v3.hbs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{{! template-lint-disable require-input-label no-unknown-arguments-for-builtin-components }}
22
{{#if this.isAssessmentPaused}}
3-
<Assessments::LiveAlert @message={{t "pages.challenge.live-alerts.challenge.message"}} @assessment={{@assessment}} />
3+
<Assessments::LiveAlert @message={{t "pages.challenge.live-alerts.challenge.message"}} />
44
{{else}}
55
<div class="feedback-panel-v3">
66
<h2 class="screen-reader-only">{{t "pages.challenge.parts.feedback-v3"}}</h2>

mon-pix/app/templates/assessments/challenge.hbs

+1-4
Original file line numberDiff line numberDiff line change
@@ -94,10 +94,7 @@
9494
{{/unless}}
9595

9696
{{#if @model.assessment.hasOngoingCompanionLiveAlert}}
97-
<Assessments::LiveAlert
98-
@message={{t "pages.challenge.live-alerts.companion.message"}}
99-
@assessment={{@model.assessment}}
100-
/>
97+
<Assessments::LiveAlert @message={{t "pages.challenge.live-alerts.companion.message"}} />
10198
{{/if}}
10299
</div>
103100

Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
import { render } from '@1024pix/ember-testing-library';
2-
import { click } from '@ember/test-helpers';
32
import { t } from 'ember-intl/test-support';
43
import LiveAlert from 'mon-pix/components/assessments/live-alert';
54
import { module, test } from 'qunit';
6-
import sinon from 'sinon';
75

86
import setupIntlRenderingTest from '../../../helpers/setup-intl-rendering';
97

@@ -12,34 +10,14 @@ module('Integration | Component | Assessments | live-alert', function (hooks) {
1210

1311
test('it displays challenge live alert', async function (assert) {
1412
// given
15-
const assessment = {
16-
reload: sinon.stub(),
17-
};
1813
const message = t('pages.challenge.live-alerts.companion.message');
1914

2015
// when
21-
const screen = await render(<template><LiveAlert @assessment={{assessment}} @message={{message}} /></template>);
16+
const screen = await render(<template><LiveAlert @message={{message}} /></template>);
2217

2318
// then
2419
assert.dom(screen.getByText(message)).exists();
2520
assert.dom(screen.getByText(t('pages.challenge.live-alerts.waiting-information'))).exists();
2621
assert.dom(screen.getByRole('button', { name: t('pages.challenge.live-alerts.refresh') })).exists();
2722
});
28-
29-
module('when user clicks refresh button', function () {
30-
test('it should reload assessment', async function (assert) {
31-
// given
32-
const assessment = {
33-
reload: sinon.stub(),
34-
};
35-
const screen = await render(<template><LiveAlert @assessment={{assessment}} /></template>);
36-
37-
// when
38-
await click(screen.getByRole('button', { name: t('pages.challenge.live-alerts.refresh') }));
39-
40-
// then
41-
sinon.assert.calledOnce(assessment.reload);
42-
assert.ok(true);
43-
});
44-
});
4523
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import { setupTest } from 'ember-qunit';
2+
import createGlimmerComponent from 'mon-pix/tests/helpers/create-glimmer-component';
3+
import { module, test } from 'qunit';
4+
import sinon from 'sinon';
5+
6+
module('Unit | Component | Assessments | Live alert', function (hooks) {
7+
setupTest(hooks);
8+
9+
module('#refreshPage', function () {
10+
test('should refresh page', async function (assert) {
11+
// given
12+
const routerService = this.owner.lookup('service:router');
13+
sinon.stub(routerService, 'refresh');
14+
const component = createGlimmerComponent('assessments/live-alert');
15+
16+
// when
17+
await component.refreshPage();
18+
19+
// then
20+
sinon.assert.calledOnce(component.router.refresh);
21+
assert.ok(true);
22+
});
23+
});
24+
});

0 commit comments

Comments
 (0)