Skip to content

Commit 60430b9

Browse files
committed
fix test coverage: update testcases
1 parent 1fc4c71 commit 60430b9

4 files changed

Lines changed: 84 additions & 4 deletions

File tree

src/sections/dataset/dataset-files/files-table/file-actions/edit-files-menu/DatasetDeleteFileButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export const DatasetDeleteFileButton = ({
3737
const [searchParamsURL] = useSearchParams()
3838
const urlParams = new URLSearchParams(searchParamsURL)
3939
const version = urlParams.get(QueryParamKey.VERSION)
40-
console.log(refreshFiles)
40+
4141
function closeModalAndNavigateToDataset() {
4242
setShowConfirmationModal(false)
4343

src/sections/file/file-action-buttons/edit-file-menu/delete-file-button/confirm-delete-file-modal/ConfirmDeleteFileModal.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,12 @@ export const ConfirmDeleteFileModal = ({
4949
<Button variant="secondary" onClick={handleClose} type="button" disabled={isDeletingFile}>
5050
{tShared('cancel')}
5151
</Button>
52-
<Button variant="danger" onClick={handleDelete} type="button" disabled={isDeletingFile}>
52+
<Button
53+
variant="danger"
54+
data-testid={'deleteButton'}
55+
onClick={handleDelete}
56+
type="button"
57+
disabled={isDeletingFile}>
5358
<Stack direction="horizontal" gap={1}>
5459
{tShared('delete')}
5560
{isDeletingFile && <Spinner variant="light" animation="border" size="sm" />}

tests/component/sections/dataset/dataset-files/files-table/FilesTable.spec.tsx

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ import styles from '../../../../../../src/sections/dataset/dataset-files/files-t
1111
import { FileCriteria } from '../../../../../../src/files/domain/models/FileCriteria'
1212
import { FilePaginationInfo } from '../../../../../../src/files/domain/models/FilePaginationInfo'
1313
import { FilePreviewMother } from '../../../../files/domain/models/FilePreviewMother'
14+
import { FileRepository } from '@/files/domain/repositories/FileRepository'
1415

16+
const fileRepository: FileRepository = {} as FileRepository
1517
const testFiles = FilePreviewMother.createMany(10)
1618
const paginationInfo = new FilePaginationInfo(1, 10, 200)
1719
const testFilesTotalDownloadSize = 19900
@@ -25,6 +27,7 @@ describe('FilesTable', () => {
2527
isLoading={false}
2628
filesTotalDownloadSize={testFilesTotalDownloadSize}
2729
criteria={defaultCriteria}
30+
fileRepository={fileRepository}
2831
/>
2932
)
3033

@@ -45,6 +48,7 @@ describe('FilesTable', () => {
4548
isLoading={true}
4649
filesTotalDownloadSize={testFilesTotalDownloadSize}
4750
criteria={defaultCriteria}
51+
fileRepository={fileRepository}
4852
/>
4953
)
5054

@@ -59,6 +63,7 @@ describe('FilesTable', () => {
5963
isLoading={false}
6064
filesTotalDownloadSize={testFilesTotalDownloadSize}
6165
criteria={defaultCriteria}
66+
fileRepository={fileRepository}
6267
/>
6368
)
6469

@@ -74,6 +79,7 @@ describe('FilesTable', () => {
7479
isLoading={false}
7580
filesTotalDownloadSize={testFilesTotalDownloadSize}
7681
criteria={defaultCriteria}
82+
fileRepository={fileRepository}
7783
/>
7884
)
7985

@@ -94,6 +100,7 @@ describe('FilesTable', () => {
94100
isLoading={false}
95101
filesTotalDownloadSize={testFilesTotalDownloadSize}
96102
criteria={defaultCriteria}
103+
fileRepository={fileRepository}
97104
/>
98105
)
99106

@@ -118,6 +125,7 @@ describe('FilesTable', () => {
118125
isLoading={false}
119126
filesTotalDownloadSize={testFilesTotalDownloadSize}
120127
criteria={defaultCriteria}
128+
fileRepository={fileRepository}
121129
/>
122130
)
123131

@@ -138,6 +146,7 @@ describe('FilesTable', () => {
138146
isLoading={false}
139147
filesTotalDownloadSize={testFilesTotalDownloadSize}
140148
criteria={defaultCriteria}
149+
fileRepository={fileRepository}
141150
/>
142151
)
143152

@@ -160,6 +169,7 @@ describe('FilesTable', () => {
160169
isLoading={false}
161170
filesTotalDownloadSize={testFilesTotalDownloadSize}
162171
criteria={defaultCriteria}
172+
fileRepository={fileRepository}
163173
/>
164174
)
165175
cy.get('table > tbody > tr:nth-child(2) > td:nth-child(1) > input[type=checkbox]').click()
@@ -189,6 +199,7 @@ describe('FilesTable', () => {
189199
isLoading={false}
190200
filesTotalDownloadSize={testFilesTotalDownloadSize}
191201
criteria={defaultCriteria}
202+
fileRepository={fileRepository}
192203
/>
193204
</SettingsContext.Provider>
194205
)
@@ -212,6 +223,7 @@ describe('FilesTable', () => {
212223
isLoading={false}
213224
filesTotalDownloadSize={testFilesTotalDownloadSize}
214225
criteria={defaultCriteria}
226+
fileRepository={fileRepository}
215227
/>
216228
)
217229

tests/component/sections/dataset/dataset-files/files-table/file-actions/edit-files-menu/EditFilesOptions.spec.tsx

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ describe('EditFilesOptions', () => {
114114
cy.findByText('Close').click()
115115
})
116116

117-
it('does not show the No Selected Files message when files are selected and one option is clicked', () => {
117+
it.only('does not show the No Selected Files message when files are selected and one option is clicked', () => {
118118
cy.customMount(
119119
<EditFilesOptions
120120
files={files}
@@ -163,8 +163,10 @@ describe('EditFilesOptions for a single file', () => {
163163
)
164164

165165
cy.findByRole('button', { name: 'Restrict' }).should('exist').click()
166+
cy.findByRole('dialog').should('exist')
166167
cy.findByRole('button', { name: 'Save Changes' }).should('exist')
167168
cy.findByText('Cancel').click()
169+
cy.findByRole('dialog').should('not.exist')
168170
})
169171

170172
it('renders the unrestrict option if file is restricted', () => {
@@ -179,12 +181,14 @@ describe('EditFilesOptions for a single file', () => {
179181
)
180182

181183
cy.findByRole('button', { name: 'Unrestrict' }).should('exist').click()
184+
cy.findByRole('dialog').should('exist')
182185
cy.findByText('The file will be unrestricted.').should('exist')
183186
cy.findByRole('button', { name: 'Save Changes' }).should('exist')
184187
cy.findByText('Cancel').click()
188+
cy.findByRole('dialog').should('not.exist')
185189
})
186190

187-
it('renders delete', () => {
191+
it('renders delete modal', () => {
188192
const fileUnrestricted = FilePreviewMother.createDefault()
189193
cy.customMount(
190194
<EditFilesOptions
@@ -196,7 +200,66 @@ describe('EditFilesOptions for a single file', () => {
196200
)
197201

198202
cy.findByRole('button', { name: 'Delete' }).should('exist').click()
203+
cy.findByRole('dialog').should('exist')
199204
cy.findByText('The file will be deleted after you click on the Delete button.').should('exist')
200205
cy.findByText('Cancel').click()
206+
cy.findByRole('dialog').should('not.exist')
207+
})
208+
209+
it('should delete file if delete button clicked', () => {
210+
fileRepository.delete = cy.stub().resolves()
211+
cy.customMount(
212+
<EditFilesOptions
213+
file={FilePreviewMother.createDefault()}
214+
fileRepository={fileRepository}
215+
datasetInfo={datasetInfo}
216+
isHeader={false}
217+
/>
218+
)
219+
220+
cy.findByRole('button', { name: 'Delete' }).click()
221+
cy.findByRole('dialog').should('exist')
222+
cy.findByTestId('deleteButton').click()
223+
cy.findByRole('dialog').should('not.exist')
224+
cy.findByText(/The file has been deleted./).should('exist')
225+
})
226+
227+
it('should restrict file if restrict button clicked', () => {
228+
fileRepository.restrict = cy.stub().resolves()
229+
cy.customMount(
230+
<EditFilesOptions
231+
file={FilePreviewMother.createDefault()}
232+
fileRepository={fileRepository}
233+
datasetInfo={datasetInfo}
234+
isHeader={false}
235+
/>
236+
)
237+
238+
cy.findByRole('button', { name: 'Restrict' }).click()
239+
cy.findByRole('dialog').should('exist')
240+
cy.findByRole('button', { name: /Save Changes/i }).click()
241+
cy.findByRole('dialog').should('not.exist')
242+
cy.findByText(/The file has been restricted./).should('exist')
243+
})
244+
245+
it('should unrestrict file if restrict button clicked', () => {
246+
fileRepository.restrict = cy.stub().resolves()
247+
const fileRestricted = FilePreviewMother.createRestricted()
248+
249+
cy.customMount(
250+
<EditFilesOptions
251+
file={fileRestricted}
252+
fileRepository={fileRepository}
253+
datasetInfo={datasetInfo}
254+
isHeader={false}
255+
/>
256+
)
257+
258+
cy.findByRole('button', { name: 'Unrestrict' }).click()
259+
cy.findByRole('dialog').should('exist')
260+
cy.findByText('The file will be unrestricted.').should('exist')
261+
cy.findByRole('button', { name: /Save Changes/i }).click()
262+
cy.findByRole('dialog').should('not.exist')
263+
cy.findByText(/The file has been unrestricted./).should('exist')
201264
})
202265
})

0 commit comments

Comments
 (0)