Skip to content

Commit

Permalink
Merge branch '1513/release-2023-06RELEASE'
Browse files Browse the repository at this point in the history
  • Loading branch information
hassanad94 committed Jun 23, 2023
2 parents bc085f3 + ec7e9a3 commit fa8d1a8
Show file tree
Hide file tree
Showing 153 changed files with 3,176 additions and 1,131 deletions.
2 changes: 1 addition & 1 deletion .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

exec >/dev/tty 2>&1
yarn lint-staged
16 changes: 8 additions & 8 deletions apps/sensenet/cypress.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ export default defineConfig({
video: false,

env: {
repoUrl: 'https://e2e-service.test.sensenet.com',
identityServer: 'https://is.demo.sensenet.com',
repoUrl: 'https://daily.test.sensenet.cloud',
identityServer: 'https://daily-is.test.sensenet.cloud',
users: {
admin: {
clientId: 'xZSq7OvBQIPEXxWo',
clientSecret: 'TSWPEcLvDY2xyGUgIGsclSK2vX6WKK4QbKuO6foxvlToIl5Ar1K79Vp15soJTvy4',
clientId: 'J6IRgrjcydea2Z1N',
clientSecret: 'heIP9iGXs76nmYYsIQAOZwoaGFDX8iu6UHnqoE32PYwdY1QD8qNPfLOM5X4xuFmQ',
id: "/Root/IMS/Public('businesscat')",
},
developer: {
clientId: 'devdog',
clientSecret: '',
id: "/Root/IMS/Public('devdog')",
superAdmin: {
clientId: 'A5E6uTwVnZpuOddm',
clientSecret: 'WmjbMMPMM8yALI8NrhNmQb4uLUn7SkDQB3O834Wyu3eoMjNy4vLn7uYdpawnGloO',
id: "/Root/IMS/BuiltIn/Portal/('Admin')",
},
},
},
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ As of now we implemented the login command for you to make implementing tests ea
You can use the login command in your tests with an argument as your role you want to use:

```javascript
cy.login('developer')
cy.login('superAdmin')
```

If no argument added then login will be done with admin role.
29 changes: 14 additions & 15 deletions apps/sensenet/cypress/e2e/breadcrumb/breadcrumb.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,38 +7,37 @@ describe('breadcrumb', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT/Document_Library' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '' },
}),
)
})

it('should contain the expected items', () => {
const expectedItems = ['Content', 'IT Workspace', 'Document library']

cy.get('[data-test^="breadcrumb-item-"]').should('have.length', expectedItems.length)

cy.get('[data-test^="breadcrumb-item-"]').each(($el, index) => {
expect(expectedItems[index]).to.equal($el.text())
})
cy.get('[data-test^="breadcrumb-item-"]').should('have.length', 1)
})

it('should navigate in the target folder on click', () => {
const documentLibrarySelector = '[data-test="breadcrumb-item-document-library"]'
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get("[data-test='breadcrumb-item-sample-workspace']").should('exist')
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get('[data-test="breadcrumb-item-document-library"]').as('docLibBreadCrumb').should('exist')
cy.get('[data-test="menu-item-memos"]').click({ force: true })
cy.get('[data-test="breadcrumb-item-memos"]').should('exist')

cy.get(documentLibrarySelector).should('exist')
cy.get('[data-test="breadcrumb-item-it-workspace"]').click()
cy.get('[data-test="breadcrumb-item-it-workspace"]').should('exist')
cy.get(documentLibrarySelector).should('not.exist')
cy.get('@docLibBreadCrumb').should('not.exist')

cy.location().should((loc) => {
const query = new URLSearchParams(loc.search)
expect(query.get('path')).to.eq('/IT')

console.log(query.get('path'))

expect(query.get('path')).to.eq('/SampleWorkspace/Memos')
})
})

it('right click on a breadcrumb item should open its action menu', () => {
cy.get('[data-test^="content-context-menu-"]').should('not.exist')
cy.get('[data-test="breadcrumb-item-it-workspace"]').rightclick()
cy.get('[data-test="breadcrumb-item-content"]').rightclick()
cy.get('[data-test^="content-context-menu-"]').should('have.length.of.at.least', 1)
})
})
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Calendar event', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT/Calendar' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace/Calendar' },
}),
)
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Link', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace' },
}),
)
})
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/e2e/content-crud/link-list.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Link list', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace' },
}),
)
})
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/e2e/content-crud/link.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Link', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT/Links' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace/Links' },
}),
)
})
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/e2e/content-crud/memo-list.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Memo list', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace' },
}),
)
})
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/e2e/content-crud/memo.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Memo', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT/Memos' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace/Memos' },
}),
)
})
Expand Down
2 changes: 1 addition & 1 deletion apps/sensenet/cypress/e2e/content-crud/task.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ describe('Task', () => {
cy.visit(
pathWithQueryParams({
path: resolvePathParams({ path: PATHS.content.appPath, params: { browseType: 'explorer' } }),
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/IT/Tasks' },
newParams: { repoUrl: Cypress.env('repoUrl'), path: '/SampleWorkspace/Tasks' },
}),
)
})
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import { pathWithQueryParams } from '../../../src/services/query-string-builder'

const templeteName = 'Test template'

describe('Create/Delete content', () => {
before(() => {
cy.login()
cy.visit(pathWithQueryParams({ path: '/', newParams: { repoUrl: Cypress.env('repoUrl') } }))
})
it('Creating a new folder should work properly', () => {
cy.get('[data-test="drawer-menu-item-content-templates"]').click()

cy.intercept(/ContentTemplates\?/).as('ContentTemplates')

cy.wait('@ContentTemplates').then(({ response }) => {
cy.get('[data-test="add-button"]').click()
cy.get('[data-test="listitem-email-template"]')
.click()
.then(() => {
cy.get('#Name').type(templeteName)
cy.contains('Submit').click()
cy.get('[data-test="snackbar-close"]').click()
cy.get(`[data-test="table-cell-${templeteName.replace(/\s+/g, '-').toLowerCase()}"]`).should(
'have.text',
templeteName,
)
})
})
})

it('Folder delete should work properly', () => {
cy.get('[data-test="drawer-menu-item-content-templates"]').click()
cy.get(`[data-test="table-cell-${templeteName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick()
cy.get('[data-test="content-context-menu-delete"]')
.click()
.then(() => {
cy.get('[data-test="delete-permanently"]').click()
cy.get('button[aria-label="Delete"]').click()
cy.get('[data-test="snackbar-close"]').click()
cy.get(`[data-test="table-cell-${templeteName.replace(/\s+/g, '-').toLowerCase()}"]`).should('not.exist')
})
})
})
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
import { pathWithQueryParams } from '../../../src/services/query-string-builder'

const fileName = `TestFile`
const newFileName = `Changed${fileName}`

describe('Create/Delete content', () => {
before(() => {
cy.login()
cy.visit(pathWithQueryParams({ path: '/', newParams: { repoUrl: Cypress.env('repoUrl') } }))
})
it('Creating a new file should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get('[data-test="add-button"]').click()
cy.get('[data-test="listitem-file"]')
.click()
.then(() => {
cy.get('#Name').type(fileName)
cy.contains('Submit').click()
cy.get('[data-test="snackbar-close"]').click()
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).should('have.text', fileName)
})
})

it('File should be edited', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick({ force: true })
cy.get('[data-test="content-context-menu-edit"]')
.click()
.then(() => {
cy.get('#Name').clear().type(newFileName)
cy.contains('Submit').click()
cy.get('[data-test="snackbar-close"]').click()
cy.get(`[data-test="table-cell-${newFileName.replace(/\s+/g, '-').toLowerCase()}"]`).should(
'have.text',
newFileName,
)
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).should('not.exist')
})
})

it('File delete should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click({ force: true })
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get(`[data-test="table-cell-${newFileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick({ force: true })
cy.get('[data-test="content-context-menu-delete"]')
.click()
.then(() => {
cy.get('[data-test="delete-permanently"]').click()
cy.get('button[aria-label="Delete"]').click()
cy.get('[data-test="snackbar-close"]').click()
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).should('not.exist')
})
})
})
42 changes: 41 additions & 1 deletion apps/sensenet/cypress/e2e/content-types/content-types.cy.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { defaultContentType, defaultFieldSettings } from '../../../src/components/edit/default-content-type'
import { pathWithQueryParams } from '../../../src/services/query-string-builder'

const ctdExample = `<ContentType name="MyType" parentType="GenericContent" handler="SenseNet.ContentRepository.GenericContent" xmlns="http://schemas.sensenet.com/SenseNet/ContentRepository/ContentTypeDefinition">
Expand Down Expand Up @@ -29,12 +30,15 @@ describe('Content types', () => {
cy.visit(pathWithQueryParams({ path: '/', newParams: { repoUrl: Cypress.env('repoUrl') } }))
.get('[data-test="drawer-menu-item-content-types"]')
.click()

cy.viewport(1340, 890)
})

context('create & delete', () => {
it('should create a new content type', (done) => {
cy.get('[data-test="add-button"]').should('not.be.disabled').click()
cy.get('[data-test="listitem-content-type"]')
cy.get('[data-test="list-items"]')
.eq(0)
.click()
.then(() => {
cy.get('.monaco-editor textarea')
Expand Down Expand Up @@ -106,4 +110,40 @@ describe('Content types', () => {
cy.get('[data-test="monaco-editor-cancel"]').click()
})
})

context('presets', () => {
before(() => {
cy.login()
cy.visit(pathWithQueryParams({ path: '/', newParams: { repoUrl: Cypress.env('repoUrl') } }))
.get('[data-test="drawer-menu-item-content-types"]')
.click()

cy.viewport(1340, 890)
})
it('it should insert presets', () => {
cy.get('[data-test="add-button"]').should('not.be.disabled').click()
cy.get('[data-test="list-items"]')
.eq(0)
.click()
.then(() => {
defaultFieldSettings.forEach((field) => {
cy.get(`[data-test="preset-button-${field.name}"]`)
.should('exist')
.click()
.then(() => {
cy.get('.monaco-editor .view-lines')
.then((editor) => {
const content = editor.text().replace(/[\s]+/g, '')
//field.value.replace "\n" to '' and every whitespace to ''
const fieldvalue = field.value.replace(/[\n\s]+/g, '')
expect(content).to.contain(fieldvalue)
})
.then(() => {
cy.get('.monaco-editor textarea').click({ force: true }).focused().type('{ctrl}z')
})
})
})
})
})
})
})
6 changes: 3 additions & 3 deletions apps/sensenet/cypress/e2e/content/create_delete_content.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ describe('Create/Delete content', () => {
})
it('Creating a new folder should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-it-workspace"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get('[data-test="add-button"]').click()
cy.get('[data-test="listitem-folder"]')
.click()
Expand All @@ -27,8 +27,8 @@ describe('Create/Delete content', () => {

it('Folder delete should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-it-workspace"]').click()
cy.get(`[data-test="table-cell-${folderName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get(`[data-test="table-cell-${folderName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick({ force: true })
cy.get('[data-test="content-context-menu-delete"]')
.click()
.then(() => {
Expand Down
10 changes: 5 additions & 5 deletions apps/sensenet/cypress/e2e/content/create_delete_file.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ describe('Create/Delete content', () => {
})
it('Creating a new file should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-it-workspace"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get('[data-test="add-button"]').click()
cy.get('[data-test="listitem-file"]')
Expand All @@ -25,9 +25,9 @@ describe('Create/Delete content', () => {

it('File should be edited', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-it-workspace"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click()
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick()
cy.get(`[data-test="table-cell-${fileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick({ force: true })
cy.get('[data-test="content-context-menu-edit"]')
.click()
.then(() => {
Expand All @@ -44,9 +44,9 @@ describe('Create/Delete content', () => {

it('File delete should work properly', () => {
cy.get('[data-test="drawer-menu-item-content"]').click()
cy.get('[data-test="menu-item-it-workspace"]').click()
cy.get('[data-test="menu-item-sample-workspace"]').click({ force: true })
cy.get('[data-test="menu-item-document-library"]').click({ force: true })
cy.get(`[data-test="table-cell-${newFileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick()
cy.get(`[data-test="table-cell-${newFileName.replace(/\s+/g, '-').toLowerCase()}"]`).rightclick({ force: true })
cy.get('[data-test="content-context-menu-delete"]')
.click()
.then(() => {
Expand Down
Loading

0 comments on commit fa8d1a8

Please sign in to comment.