Skip to content

Commit 1359eb8

Browse files
Zeegaanelit0451Nikolaj Geisle
authored
v9: Create new 'delete stylesheet' cypress test (#11528)
* Create new cypress test- delete stylesheet * Cleanup Co-authored-by: Elitsa Marinovska <[email protected]> Co-authored-by: Nikolaj Geisle <[email protected]>
1 parent d4682a9 commit 1359eb8

File tree

1 file changed

+48
-11
lines changed
  • tests/Umbraco.Tests.AcceptanceTest/cypress/integration/Settings

1 file changed

+48
-11
lines changed
Lines changed: 48 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,74 @@
11
/// <reference types="Cypress" />
22
context('Stylesheets', () => {
33

4+
const name = "TestStylesheet";
5+
const fileName = name + ".css";
6+
47
beforeEach(() => {
58
cy.umbracoLogin(Cypress.env('username'), Cypress.env('password'));
9+
10+
cy.umbracoEnsureStylesheetNameNotExists(fileName);
611
});
712

8-
it('Create new style sheet file', () => {
9-
const name = "TestStylesheet";
10-
const fileName = name + ".css";
13+
afterEach(() => {
14+
// Clean up, this ensures that even if tests break we clean up
15+
cy.umbracoEnsureStylesheetNameNotExists(fileName);
16+
});
1117

12-
cy.umbracoEnsureStylesheetNameNotExists(fileName);
18+
it('Create new style sheet file', () => {
1319

1420
cy.umbracoSection('settings');
1521
cy.get('li .umb-tree-root:contains("Settings")').should("be.visible");
1622

1723
cy.umbracoTreeItem("settings", ["Stylesheets"]).rightclick();
1824

1925
cy.umbracoContextMenuAction("action-create").click();
20-
cy.get('.menu-label').first().click(); // TODO: Fucked we cant use something like cy.umbracoContextMenuAction("action-mediaType").click();
21-
//We have to wait here till everything is loaded, or worker will throw error
26+
cy.get('.menu-label').first().click(); // TODO: Would be better to use something like cy.umbracoContextMenuAction("action-mediaType").click();
27+
// We have to wait here till everything is loaded, or worker will throw error
2228
cy.intercept('/umbraco/lib/ace-builds/src-min-noconflict/worker-css.js').as('aceWorker');
2329
cy.wait('@aceWorker');
24-
//Type name
30+
31+
// Type name
2532
cy.umbracoEditorHeaderName(name);
2633

27-
//Save
34+
// Save
2835
cy.get('.btn-success').click();
2936

30-
//Assert
37+
// Assert
3138
cy.umbracoSuccessNotification().should('be.visible');
3239

33-
//Clean up
34-
cy.umbracoEnsureStylesheetNameNotExists(fileName);
3540
});
3641

42+
it('Deletes a stylesheet', () => {
43+
44+
var stylesheetData = {
45+
"virtualPath": "/css/",
46+
"path": null,
47+
"name": name,
48+
"content": "",
49+
"fileType": "stylesheets",
50+
"snippet": null,
51+
"id": "0",
52+
"notifications": []
53+
}
54+
55+
let url = '/umbraco/backoffice/umbracoapi/codefile/PostSave'
56+
cy.umbracoApiRequest(url, 'POST', stylesheetData);
57+
58+
// Navigate to Settings section
59+
cy.umbracoSection('settings');
60+
cy.get('li .umb-tree-root:contains("Settings")').should("be.visible");
61+
62+
// Open stylesheet tree
63+
cy.get('[data-element="tree-item-stylesheets"] > .umb-tree-item__inner > .umb-tree-item__arrow').click();
64+
65+
// Delete stylesheet
66+
cy.get('.umb-tree-item__inner > .umb-tree-item__label').contains(name).rightclick();
67+
cy.get('.umb-action-link').click();
68+
cy.get('[ng-if="showConfirm"]').click();
69+
70+
// Assert
71+
cy.get('.umb-tree-item__inner > .umb-tree-item__label').contains(name).should('not.exist');
72+
73+
});
3774
});

0 commit comments

Comments
 (0)