Skip to content

Commit ffafd8d

Browse files
CCM-8961: Only allow letter submit on NOT_YET_SUBMITTED
1 parent 70ee486 commit ffafd8d

File tree

19 files changed

+1002
-101
lines changed

19 files changed

+1002
-101
lines changed

frontend/src/__tests__/components/molecules/__snapshots__/ZodErrorSummary.test.tsx.snap

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,16 @@ exports[`Renders ZodErrorSummary correctly with errors 1`] = `
2525
Field error
2626
</a>
2727
</li>
28-
<li>
29-
<a>
30-
Form error
31-
</a>
32-
</li>
28+
<span
29+
class="nhsuk-error-message"
30+
>
31+
<span
32+
class="nhsuk-u-visually-hidden"
33+
>
34+
Error:
35+
</span>
36+
Form error
37+
</span>
3338
</ul>
3439
</div>
3540
</DocumentFragment>

frontend/src/__tests__/components/organisms/PreviewLetterTemplate.test.tsx

Lines changed: 84 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { render } from '@testing-library/react';
21
import { PreviewLetterTemplate } from '@organisms/PreviewLetterTemplate/PreviewLetterTemplate';
2+
import { render } from '@testing-library/react';
33

44
describe('PreviewLetterTemplate component', () => {
55
it('matches snapshot', () => {
@@ -54,4 +54,87 @@ describe('PreviewLetterTemplate component', () => {
5454

5555
expect(container.asFragment()).toMatchSnapshot();
5656
});
57+
58+
it('matches snapshot when template status is VALIDATION_FAILED', () => {
59+
const container = render(
60+
<PreviewLetterTemplate
61+
template={{
62+
templateType: 'LETTER',
63+
name: 'test-template-letter',
64+
id: 'template-id',
65+
templateStatus: 'VALIDATION_FAILED',
66+
language: 'en',
67+
letterType: 'q1',
68+
files: {
69+
pdfTemplate: {
70+
fileName: 'file.pdf',
71+
currentVersion: 'a',
72+
virusScanStatus: 'PASSED',
73+
},
74+
testDataCsv: {
75+
fileName: 'file.csv',
76+
currentVersion: 'a',
77+
virusScanStatus: 'PASSED',
78+
},
79+
},
80+
createdAt: '2025-04-02T09:33:25.729Z',
81+
updatedAt: '2025-04-02T09:33:25.729Z',
82+
}}
83+
/>
84+
);
85+
86+
expect(container.asFragment()).toMatchSnapshot();
87+
});
88+
89+
it('matches snapshot when template status is PENDING_UPLOAD', () => {
90+
const container = render(
91+
<PreviewLetterTemplate
92+
template={{
93+
templateType: 'LETTER',
94+
name: 'test-template-letter',
95+
id: 'template-id',
96+
templateStatus: 'PENDING_UPLOAD',
97+
language: 'en',
98+
letterType: 'q1',
99+
files: {
100+
pdfTemplate: {
101+
fileName: 'file.pdf',
102+
currentVersion: 'a',
103+
virusScanStatus: 'PENDING',
104+
},
105+
},
106+
createdAt: '2025-04-02T09:33:25.729Z',
107+
updatedAt: '2025-04-02T09:33:25.729Z',
108+
}}
109+
/>
110+
);
111+
112+
expect(container.asFragment()).toMatchSnapshot();
113+
});
114+
115+
it('matches snapshot when template status is PENDING_VALIDATION', () => {
116+
const container = render(
117+
<PreviewLetterTemplate
118+
template={{
119+
templateType: 'LETTER',
120+
name: 'test-template-letter',
121+
id: 'template-id',
122+
templateStatus: 'PENDING_VALIDATION',
123+
language: 'en',
124+
letterType: 'q1',
125+
files: {
126+
pdfTemplate: {
127+
fileName: 'file.pdf',
128+
currentVersion: 'a',
129+
virusScanStatus: 'PASSED',
130+
},
131+
},
132+
createdAt: '2025-04-02T09:33:25.729Z',
133+
updatedAt: '2025-04-02T09:33:25.729Z',
134+
}}
135+
/>
136+
);
137+
138+
expect(container.asFragment()).toMatchSnapshot();
139+
});
57140
});

0 commit comments

Comments
 (0)