12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /**
- * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
- import type { User } from '@nextcloud/cypress'
- import { createFolder, getRowForFile, navigateToFolder } from '../files/FilesUtils'
- import { createFileRequest, enterGuestName } from './FilesSharingUtils'
- describe('Files', { testIsolation: true }, () => {
- let user: User
- let url = ''
- let folderName = 'test-folder'
- it('Login with a user and create a file request', () => {
- cy.createRandomUser().then((_user) => {
- user = _user
- cy.login(user)
- })
- cy.visit('/apps/files')
- createFolder(folderName)
- createFileRequest(`/${folderName}`)
- cy.get('@fileRequestUrl').should('contain', '/s/').then((_url: string) => {
- cy.logout()
- url = _url
- })
- })
- it('Open the file request as a guest', () => {
- cy.visit(url)
- enterGuestName('Guest')
- // Check various elements on the page
- cy.get('#public-upload .emptycontent').should('be.visible')
- cy.get('#public-upload h2').contains(`Upload files to ${folderName}`)
- cy.get('#public-upload input[type="file"]').as('fileInput').should('exist')
- cy.intercept('PUT', '/public.php/dav/files/*/*').as('uploadFile')
- // Upload a file
- cy.get('@fileInput').selectFile({
- contents: Cypress.Buffer.from('abcdef'),
- fileName: 'file.txt',
- mimeType: 'text/plain',
- lastModified: Date.now(),
- }, { force: true })
- cy.wait('@uploadFile').its('response.statusCode').should('eq', 201)
- })
- it('Check the uploaded file', () => {
- cy.login(user)
- cy.visit(`/apps/files/files?dir=/${folderName}`)
- getRowForFile('Guest')
- .should('be.visible')
- navigateToFolder('Guest')
- getRowForFile('file.txt').should('be.visible')
- })
- })
|