Loading .gitignore +1 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ testem.log .env cypress/fixtures cypress/screenshots cypress/downloads # System Files .DS_Store Loading angular.json +9 −2 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "allowedCommonJsDependencies": ["jwt-decode"], "allowedCommonJsDependencies": ["jwt-decode", "moment", "jsoneditor", "fast-sha256"], "outputPath": "dist/org.etsi.osl.tmf.web", "index": "src/index.html", "main": "src/main.ts", Loading Loading @@ -56,7 +56,14 @@ "with": "src/environments/environment.prod.ts" } ], "optimization": true, "optimization": { "scripts": true, "styles": { "minify": true, "inlineCritical": false }, "fonts": true }, "outputHashing": "all", "sourceMap": false, "namedChunks": false, Loading cypress.config.ts +0 −2 Original line number Diff line number Diff line Loading @@ -7,13 +7,11 @@ export default defineConfig({ e2e: { setupNodeEvents(on, config) { // implement node event listeners here require("ts-node").register({ project: "tsconfig.json", }); return config; }, //baseUrl: "http://orgosletsitmfweb:4200", baseUrl: process.env.CYPRESS_BASE_URL, pageLoadTimeout: 16000, viewportWidth: 1500, Loading cypress/e2e/auth.cy.ts +1 −1 Original line number Diff line number Diff line Loading @@ -45,7 +45,7 @@ describe("user authentication", () => { }); it("should login, logout", () => { cy.loginPath( ":nth-child(2) > .container > .row > :nth-child(2) > a > .btn", ":nth-child(1) > .nav-link", "/services" ); cy.get("#navbarDropdown2").click(); Loading cypress/e2e/user-journeys-logged-in.cy.ts +77 −92 Original line number Diff line number Diff line describe('logged user journeys', () => { beforeEach(() => { //cy.visit("http://localhost:4200/"); cy.visit(window.location.origin); }); afterEach(() => { //log user out after each test cy.get('#navbarDropdown2').click(); cy.get(':nth-child(2) > .dropdown > .dropdown-menu > :nth-child(8)').click(); cy.location("pathname").should("equal", "/"); }); // afterEach(() => { // //log user out after each test // cy.get('#navbarDropdown2').click(); // cy.get(':nth-child(2) > .dropdown > .dropdown-menu > :nth-child(8)').click(); // cy.location("pathname").should("equal", "/"); // }); // it.only('logs in through services', () => { // cy.loginPath('[data-cy="servicesPortal"]', '/services'); // //back on services marketplace after login // cy.location("pathname").should("equal", "/services/services_marketplace"); // //check every 'Manage Services' dropdown item // cy.get(':nth-child(2) > #navbarDropdown').click(); // let i=1; // cy.get('.dropdown-item').each(($el) => { // cy.wrap($el).click(); // Click the link // cy.get(':nth-child(1) > .cdk-column-actions > .btn').first().click(); // //does the dialog open? // cy.get('mat-dialog-container').should('exist'); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // i = i+1; // cy.log(`${i}`); // if(i>2) { // cy.log("it returns now"); // return false; // } // }); // //access the service specs dropdown // cy.get('#navbarDropdown1').click(); // let j=0; // for(let i=1; i<=2; i++) { // cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); // cy.location("pathname").should("not.equal", "/services/services_marketplace"); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // cy.get('#navbarDropdown1').click(); // } // //check the rest dropdown items // cy.get(':nth-child(4) > .dropdown-item').click(); // cy.get('mat-dialog-container').should('exist'); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // //'Manage Entities' dropdown // cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); // }); it('logs in through services', () => { cy.loginPath(':nth-child(2) > .container > .row > :nth-child(2) > a > .btn', '/services'); //back on services marketplace after login cy.loginPath('[data-cy="servicesPortal"]', '/services'); cy.location("pathname").should("equal", "/services/services_marketplace"); //check every 'Manage Services' dropdown item cy.get(':nth-child(2) > #navbarDropdown').click(); let i=0; cy.get('.show .dropdown-item').each(($el) => { i++; cy.wrap($el).click(); // Click the link cy.get(':nth-child(1) > .cdk-column-actions > .btn').first().click(); //does the dialog open? cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); if(i>1) { return false; } }); //access the service specs dropdown cy.get('#navbarDropdown1').click(); let j=0; for(let i=1; i<=2; i++) { cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); cy.location("pathname").should("not.equal", "/services/services_marketplace"); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); cy.get('#navbarDropdown1').click(); } //check the rest dropdown items cy.get(':nth-child(4) > .dropdown-item').click(); cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); cy.navigateThroughDropdowns("Services Marketplace"); cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); cy.manageEntities(':nth-child(4) > #navbarDropdown', 3); //'Manage Entities' dropdown cy.manageEntities(':nth-child(3) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); }); it('logs in through resources', () => { cy.loginPath(':nth-child(3) > .container > .row > .order-md-1 > a > .btn', '/resources'); cy.location("pathname").should("equal", "/resources/resource_catalogs"); cy.get('.text-md-right > .btn').click(); cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('.show > :nth-child(2) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_categories"); cy.get('.text-md-right > .btn').click(); cy.location("pathname").should("equal", "/resources/resource_categories_update"); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('#navbarDropdown1').click(); for(let i=1; i<=2; i++) { cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); cy.location("pathname").should("not.equal", "/resources/resource_categories"); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('#navbarDropdown1').click(); } //resource inventory cy.get(':nth-child(5) > .dropdown-item').click(); it('logs in through resources', () => { cy.loginPath('[data-cy="resourcesPortal"]', '/resources'); cy.location("pathname").should("equal", "/resources/resource_inventory"); cy.get('#navbarDropdown').click(); cy.navigateThroughDropdowns("Resource Inventory"); //resource pools cy.get(':nth-child(7) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_pools"); cy.get('#navbarDropdown').click(); }); //resource reservations cy.get(':nth-child(8) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_reservations"); }); it('logs in through testing', () => { cy.loginPath(':nth-child(5) > .container > .row > .order-md-1 > a > .btn', '/testing'); cy.manageEntities(':nth-child(1) > #navbarDropdown', '.text-md-right > .btn', 3, 2); cy.manageEntities(':nth-child(2) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); cy.loginPath('[data-cy="testingPortal"]', '/testing'); cy.manageEntities(':nth-child(1) > #navbarDropdown', 2); cy.manageEntities(':nth-child(2) > #navbarDropdown', 2); }); it('logs in through products', () => { cy.loginPath(':nth-child(6) > .container > .row > :nth-child(2) > a > .btn', '/products'); cy.manageEntities(':nth-child(2) > #navbarDropdown', '.text-md-right > .btn', 2, 4); cy.manageEntities(':nth-child(3) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); cy.loginPath('[data-cy="productsPortal"]', '/products'); cy.manageEntities(':nth-child(2) > #navbarDropdown', 4); cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); }); }) No newline at end of file Loading
.gitignore +1 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ testem.log .env cypress/fixtures cypress/screenshots cypress/downloads # System Files .DS_Store Loading
angular.json +9 −2 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "allowedCommonJsDependencies": ["jwt-decode"], "allowedCommonJsDependencies": ["jwt-decode", "moment", "jsoneditor", "fast-sha256"], "outputPath": "dist/org.etsi.osl.tmf.web", "index": "src/index.html", "main": "src/main.ts", Loading Loading @@ -56,7 +56,14 @@ "with": "src/environments/environment.prod.ts" } ], "optimization": true, "optimization": { "scripts": true, "styles": { "minify": true, "inlineCritical": false }, "fonts": true }, "outputHashing": "all", "sourceMap": false, "namedChunks": false, Loading
cypress.config.ts +0 −2 Original line number Diff line number Diff line Loading @@ -7,13 +7,11 @@ export default defineConfig({ e2e: { setupNodeEvents(on, config) { // implement node event listeners here require("ts-node").register({ project: "tsconfig.json", }); return config; }, //baseUrl: "http://orgosletsitmfweb:4200", baseUrl: process.env.CYPRESS_BASE_URL, pageLoadTimeout: 16000, viewportWidth: 1500, Loading
cypress/e2e/auth.cy.ts +1 −1 Original line number Diff line number Diff line Loading @@ -45,7 +45,7 @@ describe("user authentication", () => { }); it("should login, logout", () => { cy.loginPath( ":nth-child(2) > .container > .row > :nth-child(2) > a > .btn", ":nth-child(1) > .nav-link", "/services" ); cy.get("#navbarDropdown2").click(); Loading
cypress/e2e/user-journeys-logged-in.cy.ts +77 −92 Original line number Diff line number Diff line describe('logged user journeys', () => { beforeEach(() => { //cy.visit("http://localhost:4200/"); cy.visit(window.location.origin); }); afterEach(() => { //log user out after each test cy.get('#navbarDropdown2').click(); cy.get(':nth-child(2) > .dropdown > .dropdown-menu > :nth-child(8)').click(); cy.location("pathname").should("equal", "/"); }); // afterEach(() => { // //log user out after each test // cy.get('#navbarDropdown2').click(); // cy.get(':nth-child(2) > .dropdown > .dropdown-menu > :nth-child(8)').click(); // cy.location("pathname").should("equal", "/"); // }); // it.only('logs in through services', () => { // cy.loginPath('[data-cy="servicesPortal"]', '/services'); // //back on services marketplace after login // cy.location("pathname").should("equal", "/services/services_marketplace"); // //check every 'Manage Services' dropdown item // cy.get(':nth-child(2) > #navbarDropdown').click(); // let i=1; // cy.get('.dropdown-item').each(($el) => { // cy.wrap($el).click(); // Click the link // cy.get(':nth-child(1) > .cdk-column-actions > .btn').first().click(); // //does the dialog open? // cy.get('mat-dialog-container').should('exist'); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // i = i+1; // cy.log(`${i}`); // if(i>2) { // cy.log("it returns now"); // return false; // } // }); // //access the service specs dropdown // cy.get('#navbarDropdown1').click(); // let j=0; // for(let i=1; i<=2; i++) { // cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); // cy.location("pathname").should("not.equal", "/services/services_marketplace"); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // cy.get('#navbarDropdown1').click(); // } // //check the rest dropdown items // cy.get(':nth-child(4) > .dropdown-item').click(); // cy.get('mat-dialog-container').should('exist'); // cy.go('back'); // cy.get(':nth-child(2) > #navbarDropdown').click(); // //'Manage Entities' dropdown // cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); // }); it('logs in through services', () => { cy.loginPath(':nth-child(2) > .container > .row > :nth-child(2) > a > .btn', '/services'); //back on services marketplace after login cy.loginPath('[data-cy="servicesPortal"]', '/services'); cy.location("pathname").should("equal", "/services/services_marketplace"); //check every 'Manage Services' dropdown item cy.get(':nth-child(2) > #navbarDropdown').click(); let i=0; cy.get('.show .dropdown-item').each(($el) => { i++; cy.wrap($el).click(); // Click the link cy.get(':nth-child(1) > .cdk-column-actions > .btn').first().click(); //does the dialog open? cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); if(i>1) { return false; } }); //access the service specs dropdown cy.get('#navbarDropdown1').click(); let j=0; for(let i=1; i<=2; i++) { cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); cy.location("pathname").should("not.equal", "/services/services_marketplace"); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); cy.get('#navbarDropdown1').click(); } //check the rest dropdown items cy.get(':nth-child(4) > .dropdown-item').click(); cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get(':nth-child(2) > #navbarDropdown').click(); cy.navigateThroughDropdowns("Services Marketplace"); cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); cy.manageEntities(':nth-child(4) > #navbarDropdown', 3); //'Manage Entities' dropdown cy.manageEntities(':nth-child(3) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); }); it('logs in through resources', () => { cy.loginPath(':nth-child(3) > .container > .row > .order-md-1 > a > .btn', '/resources'); cy.location("pathname").should("equal", "/resources/resource_catalogs"); cy.get('.text-md-right > .btn').click(); cy.get('mat-dialog-container').should('exist'); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('.show > :nth-child(2) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_categories"); cy.get('.text-md-right > .btn').click(); cy.location("pathname").should("equal", "/resources/resource_categories_update"); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('#navbarDropdown1').click(); for(let i=1; i<=2; i++) { cy.get(`.dropdown-submenu > .dropdown-menu > :nth-child(${i}) `).click(); cy.location("pathname").should("not.equal", "/resources/resource_categories"); cy.go('back'); cy.get('#navbarDropdown').click(); cy.get('#navbarDropdown1').click(); } //resource inventory cy.get(':nth-child(5) > .dropdown-item').click(); it('logs in through resources', () => { cy.loginPath('[data-cy="resourcesPortal"]', '/resources'); cy.location("pathname").should("equal", "/resources/resource_inventory"); cy.get('#navbarDropdown').click(); cy.navigateThroughDropdowns("Resource Inventory"); //resource pools cy.get(':nth-child(7) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_pools"); cy.get('#navbarDropdown').click(); }); //resource reservations cy.get(':nth-child(8) > .dropdown-item').click(); cy.location("pathname").should("equal", "/resources/resource_reservations"); }); it('logs in through testing', () => { cy.loginPath(':nth-child(5) > .container > .row > .order-md-1 > a > .btn', '/testing'); cy.manageEntities(':nth-child(1) > #navbarDropdown', '.text-md-right > .btn', 3, 2); cy.manageEntities(':nth-child(2) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); cy.loginPath('[data-cy="testingPortal"]', '/testing'); cy.manageEntities(':nth-child(1) > #navbarDropdown', 2); cy.manageEntities(':nth-child(2) > #navbarDropdown', 2); }); it('logs in through products', () => { cy.loginPath(':nth-child(6) > .container > .row > :nth-child(2) > a > .btn', '/products'); cy.manageEntities(':nth-child(2) > #navbarDropdown', '.text-md-right > .btn', 2, 4); cy.manageEntities(':nth-child(3) > #navbarDropdown', '.jumbotron-heading > .btn', 2, 2); cy.loginPath('[data-cy="productsPortal"]', '/products'); cy.manageEntities(':nth-child(2) > #navbarDropdown', 4); cy.manageEntities(':nth-child(3) > #navbarDropdown', 2); }); }) No newline at end of file