Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,44 @@ import Permissions from '../../support/dictionary/permissions';
import FinanceHelp from '../../support/fragments/finance/financeHelper';
import FiscalYears from '../../support/fragments/finance/fiscalYears/fiscalYears';
import AcquisitionUnits from '../../support/fragments/settings/acquisitionUnits/acquisitionUnits';
import SettingsMenu from '../../support/fragments/settingsMenu';
import TopMenu from '../../support/fragments/topMenu';
import Users from '../../support/fragments/users/users';
import DateTools from '../../support/utils/dateTools';
import getRandomPostfix from '../../support/utils/stringTools';

describe('Acquisition Units', () => {
const defaultAcquisitionUnit = { ...AcquisitionUnits.defaultAcquisitionUnit };
let user;
let membershipUserId;
const acquisitionUnit = {
...AcquisitionUnits.defaultAcquisitionUnit,
protectDelete: true,
protectUpdate: true,
protectCreate: true,
protectRead: true,
};
const firstFiscalYear = { ...FiscalYears.defaultUiFiscalYear };
const secondFiscalYear = {
name: `new_autotest_year_${getRandomPostfix()}`,
code: DateTools.getRandomFiscalYearCode(9000, 9999),
periodBeginDate: DateTools.getThreePreviousDaysDateForFiscalYearOnUIEdit(),
periodEndDate: DateTools.getTwoPreviousDaysDateForFiscalYearOnUIEdit(),
};
let user;

before(() => {
cy.waitForAuthRefresh(() => {
cy.loginAsAdmin({
path: SettingsMenu.acquisitionUnitsPath,
waiter: AcquisitionUnits.waitLoading,
});
cy.reload();
AcquisitionUnits.waitLoading();
}, 20_000);
cy.getAdminToken();
FiscalYears.createViaApi(firstFiscalYear).then((firstFiscalYearResponse) => {
firstFiscalYear.id = firstFiscalYearResponse.id;

AcquisitionUnits.createAcquisitionUnitViaApi(acquisitionUnit).then((acqUnitResponse) => {
acquisitionUnit.id = acqUnitResponse.id;

FiscalYears.updateFiscalYearViaApi({
...firstFiscalYearResponse,
acqUnitIds: [acquisitionUnit.id],
});
});
});

cy.createTempUser([
Permissions.uiFinanceAssignAcquisitionUnitsToNewRecord.gui,
Permissions.uiSettingsFinanceViewEditCreateDelete.gui,
Expand Down Expand Up @@ -59,29 +68,24 @@ describe('Acquisition Units', () => {
]).then((userProperties) => {
user = userProperties;

AcquisitionUnits.newAcquisitionUnit();
AcquisitionUnits.fillInAUInfo(defaultAcquisitionUnit.name);
AcquisitionUnits.assignUser(user.username);
AcquisitionUnits.assignUserViaApi(userProperties.userId, acquisitionUnit.id).then((id) => {
membershipUserId = id;
});

cy.login(userProperties.username, userProperties.password, {
path: TopMenu.fiscalYearPath,
waiter: FiscalYears.waitForFiscalYearDetailsLoading,
});
FinanceHelp.searchByAll(firstFiscalYear.name);
FiscalYears.selectFisacalYear(firstFiscalYear.name);
FiscalYears.editFiscalYearDetails();
FiscalYears.assignAU(defaultAcquisitionUnit.name);
FiscalYears.closeThirdPane();
FiscalYears.resetFilters();
});
});

after(() => {
cy.loginAsAdmin({
path: SettingsMenu.acquisitionUnitsPath,
waiter: AcquisitionUnits.waitLoading,
cy.getAdminToken();
AcquisitionUnits.unAssignUserViaApi(membershipUserId);
AcquisitionUnits.deleteAcquisitionUnitViaApi(acquisitionUnit.id);
FiscalYears.getFiscalYearIdByName(secondFiscalYear.name).then((id) => {
FiscalYears.deleteFiscalYearViaApi(id);
});
AcquisitionUnits.unAssignAdmin(defaultAcquisitionUnit.name);
AcquisitionUnits.delete(defaultAcquisitionUnit.name);
Users.deleteViaApi(user.userId);
});

Expand Down
Original file line number Diff line number Diff line change
@@ -1,29 +1,48 @@
import Permissions from '../../support/dictionary/permissions';
import FinanceHelp from '../../support/fragments/finance/financeHelper';
import FiscalYearDetails from '../../support/fragments/finance/fiscalYears/fiscalYearDetails';
import FiscalYears from '../../support/fragments/finance/fiscalYears/fiscalYears';
import AcquisitionUnits from '../../support/fragments/settings/acquisitionUnits/acquisitionUnits';
import SettingsMenu from '../../support/fragments/settingsMenu';
import TopMenu from '../../support/fragments/topMenu';
import Users from '../../support/fragments/users/users';
import DateTools from '../../support/utils/dateTools';
import InteractorsTools from '../../support/utils/interactorsTools';
import getRandomPostfix from '../../support/utils/stringTools';

describe('Acquisition Units', () => {
const defaultAcquisitionUnit = { ...AcquisitionUnits.defaultAcquisitionUnit };
const defaultFiscalYear = { ...FiscalYears.defaultUiFiscalYear };
const acquisitionUnit = {
...AcquisitionUnits.defaultAcquisitionUnit,
protectDelete: true,
protectUpdate: false,
protectCreate: false,
};
const fiscalYear = { ...FiscalYears.defaultUiFiscalYear };
const newFiscalYear = {
name: `FYA2023_${getRandomPostfix()}`,
code: DateTools.getRandomFiscalYearCode(2000, 9999),
periodBeginDate: DateTools.getCurrentDateForFiscalYear(),
periodEndDate: DateTools.getDayAfterTomorrowDateForFiscalYear(),
};
let user;
let createdFiscalYearId;

before(() => {
cy.getAdminToken();
FiscalYears.createViaApi(fiscalYear).then((fiscalYearResponse) => {
fiscalYear.id = fiscalYearResponse.id;

AcquisitionUnits.createAcquisitionUnitViaApi(acquisitionUnit).then((acqUnitResponse) => {
acquisitionUnit.id = acqUnitResponse.id;

FiscalYears.updateFiscalYearViaApi({
...fiscalYearResponse,
acqUnitIds: [acquisitionUnit.id],
});
});
});

cy.createTempUser([
Permissions.uiFinanceAssignAcquisitionUnitsToNewRecord.gui,
Permissions.uiFinanceManageAcquisitionUnits.gui,
Permissions.uiSettingsFinanceViewEditCreateDelete.gui,
Permissions.uiFinanceViewEditDeleteLedger.gui,
Permissions.uiFinanceViewEditDeleteGroups.gui,
Expand All @@ -41,62 +60,36 @@ describe('Acquisition Units', () => {
Permissions.uiFinanceViewFundAndBudget.gui,
Permissions.uiFinanceViewFiscalYear.gui,
Permissions.uiFinanceManuallyReleaseEncumbrance.gui,
Permissions.uiFinanceManageAcquisitionUnits.gui,
Permissions.uiFinanceExportFinanceRecords.gui,
Permissions.uiFinanceExecuteFiscalYearRollover.gui,
Permissions.uiFinanceCreateTransfers.gui,
Permissions.uiFinanceCreateAllocations.gui,
]).then((userProperties) => {
user = userProperties;

cy.getAdminUserDetails().then((adminUser) => {
defaultAcquisitionUnit.protectDelete = true;
defaultAcquisitionUnit.protectUpdate = false;
defaultAcquisitionUnit.protectCreate = false;
AcquisitionUnits.createAcquisitionUnitViaApi(defaultAcquisitionUnit)
.then((acqUnitResponse) => {
defaultAcquisitionUnit.id = acqUnitResponse.id;
return AcquisitionUnits.assignUserViaApi(adminUser.id, defaultAcquisitionUnit.id);
})
.then(() => {
FiscalYears.createViaApi({
...defaultFiscalYear,
acqUnitIds: [defaultAcquisitionUnit.id],
}).then((firstFiscalYearResponse) => {
defaultFiscalYear.id = firstFiscalYearResponse.id;
});
})
.then(() => {
cy.login(userProperties.username, userProperties.password, {
path: TopMenu.fiscalYearPath,
waiter: FiscalYears.waitForFiscalYearDetailsLoading,
});
});
cy.login(userProperties.username, userProperties.password, {
path: TopMenu.fiscalYearPath,
waiter: FiscalYears.waitForFiscalYearDetailsLoading,
});
});
});

after(() => {
cy.loginAsAdmin({
path: SettingsMenu.acquisitionUnitsPath,
waiter: AcquisitionUnits.waitLoading,
});
FiscalYears.deleteFiscalYearViaApi(defaultFiscalYear.id);
if (createdFiscalYearId) {
FiscalYears.deleteFiscalYearViaApi(createdFiscalYearId);
}
AcquisitionUnits.unAssignAdmin(defaultAcquisitionUnit.name);
AcquisitionUnits.delete(defaultAcquisitionUnit.name);
cy.getAdminToken();
AcquisitionUnits.deleteAcquisitionUnitViaApi(acquisitionUnit.id);
FiscalYears.deleteFiscalYearViaApi(fiscalYear.id);
FiscalYears.deleteFiscalYearViaApi(newFiscalYear.id);
Users.deleteViaApi(user.userId);
});

it(
'C375080 Acquisition unit restrictions for "Fiscal year" records (only Delete option is active) when user is NOT assigned to acquisition unit (thunderjet)',
{ tags: ['criticalPath', 'thunderjet', 'C375080'] },
() => {
FiscalYears.selectFisacalYear(defaultFiscalYear.name);
FinanceHelp.searchByAll(fiscalYear.name);
FiscalYears.selectFisacalYear(fiscalYear.name);
FiscalYearDetails.checkFiscalYearDetails({
information: [{ key: 'Acquisition units', value: defaultAcquisitionUnit.name }],
information: [{ key: 'Acquisition units', value: acquisitionUnit.name }],
});
FiscalYears.clickActionsButtonInFY();
FiscalYears.checkDeleteButtonIsDisabled();
Expand All @@ -108,13 +101,13 @@ describe('Acquisition Units', () => {
InteractorsTools.checkCalloutMessage('Fiscal year has been saved');
FiscalYears.closeThirdPane();
FiscalYears.clickNewFY();
FiscalYears.createFiscalYearWithAllFields(newFiscalYear, defaultAcquisitionUnit.name);
FiscalYears.createFiscalYearWithAllFields(newFiscalYear, acquisitionUnit.name);
FiscalYears.clickSaveAndClose();
cy.wait(1000);
InteractorsTools.checkCalloutMessage('Fiscal year has been saved');
FiscalYears.waitForFiscalYearDetailsLoading();
FiscalYears.getFiscalYearIdByName(newFiscalYear.name).then((fiscalYearId) => {
createdFiscalYearId = fiscalYearId;
newFiscalYear.id = fiscalYearId;
});
FiscalYears.clickActionsButtonInFY();
FiscalYears.checkDeleteButtonIsDisabled();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,34 @@ import Permissions from '../../support/dictionary/permissions';
import FinanceHelp from '../../support/fragments/finance/financeHelper';
import FiscalYears from '../../support/fragments/finance/fiscalYears/fiscalYears';
import AcquisitionUnits from '../../support/fragments/settings/acquisitionUnits/acquisitionUnits';
import SettingsMenu from '../../support/fragments/settingsMenu';
import TopMenu from '../../support/fragments/topMenu';
import Users from '../../support/fragments/users/users';

describe('Acquisition Units', () => {
const defaultAcquisitionUnit = { ...AcquisitionUnits.defaultAcquisitionUnit };
const defaultFiscalYear = { ...FiscalYears.defaultUiFiscalYear };
const acquisitionUnit = {
...AcquisitionUnits.defaultAcquisitionUnit,
protectDelete: true,
protectCreate: true,
protectUpdate: false,
};
const fiscalYear = { ...FiscalYears.defaultUiFiscalYear };
let user;

before(() => {
cy.waitForAuthRefresh(() => {
cy.loginAsAdmin({
path: SettingsMenu.acquisitionUnitsPath,
waiter: AcquisitionUnits.waitLoading,
cy.getAdminToken();
FiscalYears.createViaApi(fiscalYear).then((fiscalYearResponse) => {
fiscalYear.id = fiscalYearResponse.id;

AcquisitionUnits.createAcquisitionUnitViaApi(acquisitionUnit).then((acqUnitResponse) => {
acquisitionUnit.id = acqUnitResponse.id;

FiscalYears.updateFiscalYearViaApi({
...fiscalYearResponse,
acqUnitIds: [acquisitionUnit.id],
});
});
cy.reload();
AcquisitionUnits.waitLoading();
}, 20_000);
FiscalYears.createViaApi(defaultFiscalYear).then((firstFiscalYearResponse) => {
defaultFiscalYear.id = firstFiscalYearResponse.id;
});

cy.createTempUser([
Permissions.uiFinanceAssignAcquisitionUnitsToNewRecord.gui,
Permissions.uiSettingsFinanceViewEditCreateDelete.gui,
Expand Down Expand Up @@ -51,21 +58,6 @@ describe('Acquisition Units', () => {
]).then((userProperties) => {
user = userProperties;

AcquisitionUnits.newAcquisitionUnit();
AcquisitionUnits.fillInAUInfo(defaultAcquisitionUnit.name);
AcquisitionUnits.assignAdmin();
AcquisitionUnits.editAU();
AcquisitionUnits.selectViewCheckbox();
AcquisitionUnits.editAU();
AcquisitionUnits.selectEditCheckbox();

cy.visit(TopMenu.fiscalYearPath);
FinanceHelp.searchByAll(defaultFiscalYear.name);
FiscalYears.selectFisacalYear(defaultFiscalYear.name);
FiscalYears.editFiscalYearDetails();
FiscalYears.assignAU(defaultAcquisitionUnit.name);
FiscalYears.closeThirdPane();
FiscalYears.resetFilters();
cy.login(userProperties.username, userProperties.password, {
path: TopMenu.fiscalYearPath,
waiter: FiscalYears.waitForFiscalYearDetailsLoading,
Expand All @@ -74,29 +66,25 @@ describe('Acquisition Units', () => {
});

after(() => {
cy.loginAsAdmin({
path: SettingsMenu.acquisitionUnitsPath,
waiter: AcquisitionUnits.waitLoading,
});
FiscalYears.deleteFiscalYearViaApi(defaultFiscalYear.id);
AcquisitionUnits.unAssignAdmin(defaultAcquisitionUnit.name);
AcquisitionUnits.delete(defaultAcquisitionUnit.name);
cy.getAdminToken();
AcquisitionUnits.deleteAcquisitionUnitViaApi(acquisitionUnit.id);
FiscalYears.deleteFiscalYearViaApi(fiscalYear.id);
Users.deleteViaApi(user.userId);
});

it(
'C375079 Acquisition unit restrictions for "Fiscal year" records (Create, Delete options are active) when user is NOT assigned to acquisition unit (thunderjet)',
{ tags: ['criticalPath', 'thunderjet', 'C375079'] },
() => {
FinanceHelp.searchByAll(defaultFiscalYear.name);
FiscalYears.selectFisacalYear(defaultFiscalYear.name);
FinanceHelp.searchByAll(fiscalYear.name);
FiscalYears.selectFisacalYear(fiscalYear.name);
FiscalYears.clickActionsButtonInFY();
FiscalYears.checkDeleteButtonIsDisabled();
FiscalYears.clickActionsButtonInFY();
FiscalYears.editFiscalYearDetails();
FiscalYears.editDescription();
FiscalYears.clickNewFY();
FiscalYears.checkAcquisitionUnitIsAbsentToAssign(defaultAcquisitionUnit.name);
FiscalYears.checkAcquisitionUnitIsAbsentToAssign(acquisitionUnit.name);
},
);
});
Loading