Skip to content

Commit

Permalink
Merge branch 'develop' into prescriptions/enhancements/discontinued
Browse files Browse the repository at this point in the history
  • Loading branch information
nihal467 authored Sep 19, 2023
2 parents 38a12f4 + 856a7e9 commit 433159f
Show file tree
Hide file tree
Showing 28 changed files with 841 additions and 596 deletions.
35 changes: 7 additions & 28 deletions .github/workflows/cypress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ jobs:
permissions: write-all
if: github.repository == 'coronasafe/care_fe'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
containers: [1,2,3,4,5,6,7,8]
steps:
- name: Checkout 📥
uses: actions/checkout@v3
Expand Down Expand Up @@ -60,39 +64,14 @@ jobs:
wait-on-timeout: 300
browser: chrome
record: true
parallel: true
env:
CARE_API: http://localhost:9000
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_OPTIONS: --max_old_space_size=4096

- name: Remove cypress passed label on failure 🏷️
uses: actions-ecosystem/action-remove-labels@v1
if: failure()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: cypress passed

- name: Add cypress passed label on success 🏷️
uses: actions-ecosystem/action-add-labels@v1
if: success()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: cypress passed

- name: Remove cypress failed label on success 🏷️
uses: actions-ecosystem/action-remove-labels@v1
if: success()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: cypress failed

- name: Add cypress failed label on failure 🏷️
uses: actions-ecosystem/action-add-labels@v1
if: failure()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: cypress failed
COMMIT_INFO_MESSAGE: ${{github.event.pull_request.title}}
COMMIT_INFO_SHA: ${{github.event.pull_request.head.sha}}

- name: Upload cypress screenshots on failure 📸
uses: actions/upload-artifact@v3
Expand Down
1 change: 0 additions & 1 deletion cypress.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ export default defineConfig({
return null;
},
});

return config;
},
baseUrl: "http://localhost:4000",
Expand Down
25 changes: 25 additions & 0 deletions cypress/e2e/assets_spec/asset_homepage.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { AssetSearchPage } from "../../pageobject/Asset/AssetSearch";
import { AssetQRScanPage } from "../../pageobject/Asset/AssetQRScan";
import { AssetPagination } from "../../pageobject/Asset/AssetPagination";
import { AssetFilters } from "../../pageobject/Asset/AssetFilters";
import { AssetPage } from "../../pageobject/Asset/AssetCreation";
import LoginPage from "../../pageobject/Login/LoginPage";
import { v4 as uuidv4 } from "uuid";

Expand All @@ -13,6 +14,7 @@ describe("Asset Tab", () => {
const assetQRScanPage = new AssetQRScanPage();
const assetPagination = new AssetPagination();
const assetFilters = new AssetFilters();
const assetPage = new AssetPage();
const loginPage = new LoginPage();
const assetName = "Dummy Camera 10";
const qrCode = uuidv4();
Expand Down Expand Up @@ -83,6 +85,29 @@ describe("Asset Tab", () => {
assetPagination.navigateToPreviousPage();
});

it("Import new asset", () => {
assetPage.selectassetimportbutton();
assetPage.selectImportOption();
assetPage.selectImportFacility("Dummy Facility 1");
assetPage.importAssetFile();
assetPage.selectImportLocation("Camera Locations");
assetPage.clickImportAsset();
assetPage.verifySuccessNotification("Assets imported successfully");
});

it("verify imported asset", () => {
assetSearchPage.typeSearchKeyword("New Test Asset");
assetSearchPage.pressEnter();
assetSearchPage.verifyAssetIsPresent("New Test Asset");
});

it("Export asset", () => {
assetPage.selectassetimportbutton();
assetPage.selectjsonexportbutton();
assetPage.selectassetimportbutton();
assetPage.selectcsvexportbutton();
});

afterEach(() => {
cy.saveLocalStorage();
});
Expand Down
178 changes: 178 additions & 0 deletions cypress/e2e/assets_spec/assets_creation.cy.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
/// <reference types="cypress" />
import { afterEach, before, beforeEach, cy, describe, it } from "local-cypress";
import { AssetPage } from "../../pageobject/Asset/AssetCreation";
import { v4 as uuidv4 } from "uuid";
import LoginPage from "../../pageobject/Login/LoginPage";
import { AssetSearchPage } from "../../pageobject/Asset/AssetSearch";

describe("Asset", () => {
const assetPage = new AssetPage();
const assetSearchPage = new AssetSearchPage();
const loginPage = new LoginPage();
const phone_number = "9999999999";
const serialNumber = Math.floor(Math.random() * 10 ** 10).toString();

before(() => {
loginPage.loginAsDisctrictAdmin();
cy.saveLocalStorage();
});

beforeEach(() => {
cy.restoreLocalStorage();
cy.awaitUrl("/assets");
});

it("Verify asset creation fields throws error if empty", () => {
assetPage.createAsset();
assetPage.selectFacility("Dummy Facility 1");
assetPage.clickCreateAsset();

assetPage.verifyEmptyAssetNameError();
assetPage.verifyEmptyAssetTypeError();
assetPage.verifyEmptyLocationError();
assetPage.verifyEmptyStatusError();
assetPage.verifyEmptyPhoneError();
});

//Create an asset

it("Create an Asset", () => {
assetPage.createAsset();
assetPage.selectFacility("Dummy Facility 1");
assetPage.selectLocation("Camera Loc");
assetPage.selectAssetType("Internal");
assetPage.selectAssetClass("ONVIF Camera");

const qr_id_1 = uuidv4();

assetPage.enterAssetDetails(
"New Test Asset 1",
"Test Description",
"Working",
qr_id_1,
"Manufacturer's Name",
"2025-12-25",
"Customer Support's Name",
phone_number,
"[email protected]",
"Vendor's Name",
serialNumber,
"25122021",
"Test note for asset creation!"
);

assetPage.clickCreateAddMore();
assetPage.verifySuccessNotification("Asset created successfully");

const qr_id_2 = uuidv4();

assetPage.selectLocation("Camera Loc");
assetPage.selectAssetType("Internal");
assetPage.selectAssetClass("ONVIF Camera");
assetPage.enterAssetDetails(
"New Test Asset 2",
"Test Description",
"Working",
qr_id_2,
"Manufacturer's Name",
"2025-12-25",
"Customer Support's Name",
phone_number,
"[email protected]",
"Vendor's Name",
serialNumber,
"25122021",
"Test note for asset creation!"
);

assetPage.interceptAssetCreation();
assetPage.clickCreateAsset();
assetPage.verifyAssetCreation();
assetPage.verifySuccessNotification("Asset created successfully");

assetSearchPage.typeSearchKeyword("New Test Asset 2");
assetSearchPage.pressEnter();
assetSearchPage.verifyAssetIsPresent("New Test Asset 2");
});

it("Edit an Asset", () => {
assetPage.openCreatedAsset();

const qr_id = uuidv4();

assetPage.editAssetDetails(
"New Test Asset Edited",
"Test Description Edited",
qr_id,
"Manufacturer's Name Edited",
"Customer Support's Name Edited",
"Vendor's Name Edited",
"Test note for asset creation edited!",
"25122021"
);

assetPage.clickUpdateAsset();

assetPage.verifySuccessNotification("Asset updated successfully");
});

it("Verify Editted Asset", () => {
assetSearchPage.typeSearchKeyword("New Test Asset Edited");
assetSearchPage.pressEnter();
assetSearchPage.verifyAssetIsPresent("New Test Asset Edited");
});

it("Configure an asset", () => {
assetPage.openCreatedAsset();
assetPage.spyAssetConfigureApi();
assetPage.configureAsset(
"Host name",
"192.168.1.64",
"remote_user",
"2jCkrCRSeahzKEU",
"d5694af2-21e2-4a39-9bad-2fb98d9818bd"
);
assetPage.clickConfigureAsset();
assetPage.verifyAssetConfiguration(200);
});

it("Add an vital monitor asset and configure it", () => {
assetPage.createAsset();
assetPage.selectFacility("Dummy Facility 1");
assetPage.selectLocation("Camera Loc");
assetPage.selectAssetType("Internal");
assetPage.selectAssetClass("HL7 Vitals Monitor");

const qr_id_1 = uuidv4();

assetPage.enterAssetDetails(
"New Test Asset Vital",
"Test Description",
"Working",
qr_id_1,
"Manufacturer's Name",
"2025-12-25",
"Customer Support's Name",
phone_number,
"[email protected]",
"Vendor's Name",
serialNumber,
"25122021",
"Test note for asset creation!"
);
assetPage.interceptAssetCreation();
assetPage.clickCreateAsset();
assetPage.verifyAssetCreation();

assetSearchPage.typeSearchKeyword("New Test Asset Vital");
assetSearchPage.pressEnter();

assetPage.openCreatedAsset();
assetPage.configureVitalAsset("Host name", "192.168.1.64");
assetPage.clickConfigureVital();
});

afterEach(() => {
cy.saveLocalStorage();
});
});
Loading

0 comments on commit 433159f

Please sign in to comment.