-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
250 changed files
with
3,841 additions
and
684 deletions.
There are no files selected for viewing
157 changes: 157 additions & 0 deletions
157
cypress/e2e/bulk-edit/csv/bulk-edit-csv-user-created-updated-dates.cy.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,157 @@ | ||
import TopMenu from '../../../support/fragments/topMenu'; | ||
import permissions from '../../../support/dictionary/permissions'; | ||
import BulkEditSearchPane from '../../../support/fragments/bulk-edit/bulk-edit-search-pane'; | ||
import FileManager from '../../../support/utils/fileManager'; | ||
import getRandomPostfix from '../../../support/utils/stringTools'; | ||
import BulkEditActions from '../../../support/fragments/bulk-edit/bulk-edit-actions'; | ||
import Users from '../../../support/fragments/users/users'; | ||
import ExportFile from '../../../support/fragments/data-export/exportFile'; | ||
import DateTools from '../../../support/utils/dateTools'; | ||
|
||
let user; | ||
let updatedDate; | ||
const userUUIDsFileName = `userUUIDs_${getRandomPostfix()}.csv`; | ||
const editedFileName = `edited-records-${getRandomPostfix()}.csv`; | ||
const matchedRecordsFileName = `*-Matched-Records-${userUUIDsFileName}`; | ||
const changedRecordsFileName = `*-Changed-Records-${userUUIDsFileName}`; | ||
const previewOfProposedChangesFileName = `*-Updates-Preview-${userUUIDsFileName}`; | ||
const updatedRecordsFileName = `*-Changed-Records*-${userUUIDsFileName}`; | ||
const today = DateTools.getFormattedDate({ date: new Date() }, 'YYYY-MM-DD'); | ||
|
||
describe('bulk-edit', () => { | ||
describe('csv approach', () => { | ||
before('create test data', () => { | ||
cy.createTempUser([ | ||
permissions.bulkEditLogsView.gui, | ||
permissions.bulkEditCsvEdit.gui, | ||
permissions.uiUserEdit.gui, | ||
]).then((userProperties) => { | ||
user = userProperties; | ||
cy.login(user.username, user.password, { | ||
path: TopMenu.bulkEditPath, | ||
waiter: BulkEditSearchPane.waitLoading, | ||
}); | ||
FileManager.createFile(`cypress/fixtures/${userUUIDsFileName}`, user.userId); | ||
cy.getUsers({ limit: 1, query: `"username"="${user.username}"` }).then((users) => { | ||
updatedDate = users[0].updatedDate; | ||
}); | ||
}); | ||
}); | ||
|
||
after('delete test data', () => { | ||
cy.getAdminToken(); | ||
FileManager.deleteFile(`cypress/fixtures/${userUUIDsFileName}`); | ||
FileManager.deleteFile(`cypress/fixtures/${editedFileName}`); | ||
Users.deleteViaApi(user.userId); | ||
FileManager.deleteFileFromDownloadsByMask( | ||
userUUIDsFileName, | ||
matchedRecordsFileName, | ||
previewOfProposedChangesFileName, | ||
updatedRecordsFileName, | ||
); | ||
}); | ||
|
||
it( | ||
'C411714 Verify that "Created date" and "Updated date" fields are system updated in User Bulk edit (Local approach) (firebird)', | ||
{ tags: ['criticalPath', 'firebird'] }, | ||
() => { | ||
BulkEditSearchPane.checkUsersRadio(); | ||
BulkEditSearchPane.selectRecordIdentifier('User UUIDs'); | ||
BulkEditSearchPane.uploadFile(userUUIDsFileName); | ||
BulkEditSearchPane.waitFileUploading(); | ||
|
||
const newName = `testName_${getRandomPostfix()}`; | ||
BulkEditActions.downloadMatchedResults(); | ||
BulkEditSearchPane.verifyUsersActionShowColumns(); | ||
BulkEditSearchPane.verifyCheckboxesAbsent('Record created', 'Record updated'); | ||
const userColumns = [ | ||
'User name', | ||
'User id', | ||
'External system id', | ||
'Barcode', | ||
'Active', | ||
'Type', | ||
'Patron group', | ||
'Departments', | ||
'Proxy for', | ||
'Last name', | ||
'First name', | ||
'Middle name', | ||
'Preferred first name', | ||
'Email', | ||
'Phone', | ||
'Mobile phone', | ||
'Addresses', | ||
'Preferred contact type id', | ||
'Enrollment date', | ||
'Expiration date', | ||
'Tags', | ||
'Custom fields', | ||
]; | ||
ExportFile.verifyFileIncludes(matchedRecordsFileName, ['Date of birth', userColumns]); | ||
ExportFile.verifyFileIncludes( | ||
matchedRecordsFileName, | ||
['Created date', 'Updated date'], | ||
false, | ||
); | ||
BulkEditActions.prepareValidBulkEditFile( | ||
matchedRecordsFileName, | ||
editedFileName, | ||
'testPermFirst', | ||
newName, | ||
); | ||
|
||
BulkEditActions.openStartBulkEditForm(); | ||
BulkEditSearchPane.uploadFile(editedFileName); | ||
BulkEditSearchPane.waitFileUploading(); | ||
BulkEditActions.clickNext(); | ||
BulkEditActions.commitChanges(); | ||
BulkEditSearchPane.verifyChangedResults(newName); | ||
BulkEditActions.openActions(); | ||
BulkEditActions.downloadChangedCSV(); | ||
|
||
ExportFile.verifyFileIncludes(changedRecordsFileName, [ | ||
'Date Of Birth', | ||
userColumns, | ||
newName, | ||
]); | ||
ExportFile.verifyFileIncludes( | ||
changedRecordsFileName, | ||
['Created date', 'Updated date'], | ||
false, | ||
); | ||
|
||
BulkEditSearchPane.openLogsSearch(); | ||
BulkEditSearchPane.verifyLogsPane(); | ||
BulkEditSearchPane.checkUsersCheckbox(); | ||
|
||
BulkEditSearchPane.clickActionsRunBy(user.username); | ||
BulkEditSearchPane.verifyLogsRowActionWhenCompleted(); | ||
BulkEditSearchPane.downloadFileUsedToTrigger(); | ||
ExportFile.verifyFileIncludes(userUUIDsFileName, [user.userId]); | ||
|
||
BulkEditSearchPane.downloadFileWithMatchingRecords(); | ||
ExportFile.verifyFileIncludes(matchedRecordsFileName, ['Date of birth', userColumns]); | ||
|
||
BulkEditSearchPane.downloadFileWithProposedChanges(); | ||
ExportFile.verifyFileIncludes(previewOfProposedChangesFileName, [ | ||
'Date of birth', | ||
userColumns, | ||
newName, | ||
]); | ||
|
||
BulkEditSearchPane.downloadFileWithUpdatedRecords(); | ||
ExportFile.verifyFileIncludes(updatedRecordsFileName, [ | ||
'Date Of Birth', | ||
userColumns, | ||
newName, | ||
]); | ||
|
||
cy.getUsers({ limit: 1, query: `"username"="${user.username}"` }).then((users) => { | ||
cy.expect(users[0].updatedDate).to.include(today); | ||
cy.expect(users[0].updatedDate).to.not.eq(updatedDate); | ||
}); | ||
}, | ||
); | ||
}); | ||
}); |
63 changes: 63 additions & 0 deletions
63
cypress/e2e/bulk-edit/in-app/bulk-edit-in-app-verify-navigation-and-back.cy.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
import Permissions from '../../../support/dictionary/permissions'; | ||
import BulkEditSearchPane from '../../../support/fragments/bulk-edit/bulk-edit-search-pane'; | ||
import TopMenu from '../../../support/fragments/topMenu'; | ||
import TopMenuNavigation from '../../../support/fragments/topMenuNavigation'; | ||
import Users from '../../../support/fragments/users/users'; | ||
import UsersSearchPane from '../../../support/fragments/users/usersSearchPane'; | ||
import FileManager from '../../../support/utils/fileManager'; | ||
import getRandomPostfix from '../../../support/utils/stringTools'; | ||
|
||
let user; | ||
const userBarcodesFileName = `userBarcodes_${getRandomPostfix()}.csv`; | ||
|
||
describe('bulk-edit', () => { | ||
describe('in-app approach', () => { | ||
before('create test data', () => { | ||
cy.createTempUser([ | ||
Permissions.bulkEditView.gui, | ||
Permissions.bulkEditEdit.gui, | ||
Permissions.bulkEditUpdateRecords.gui, | ||
Permissions.uiUsersView.gui, | ||
Permissions.bulkEditCsvView.gui, | ||
Permissions.bulkEditCsvEdit.gui, | ||
]).then((userProperties) => { | ||
user = userProperties; | ||
cy.login(user.username, user.password, { | ||
path: TopMenu.bulkEditPath, | ||
waiter: BulkEditSearchPane.waitLoading, | ||
}); | ||
FileManager.createFile(`cypress/fixtures/${userBarcodesFileName}`, user.barcode); | ||
}); | ||
}); | ||
|
||
after('delete test data', () => { | ||
Users.deleteViaApi(user.userId); | ||
FileManager.deleteFile(`cypress/fixtures/${userBarcodesFileName}`); | ||
}); | ||
|
||
it( | ||
'C374150 Verify Bulk edit state when navigating to another app and back-- In app + Local (firebird) (TaaS)', | ||
{ tags: ['extendedPath', 'firebird'] }, | ||
() => { | ||
BulkEditSearchPane.checkUsersRadio(); | ||
BulkEditSearchPane.selectRecordIdentifier('User Barcodes'); | ||
BulkEditSearchPane.verifyDragNDropUsersBarcodesArea(); | ||
BulkEditSearchPane.isDragAndDropAreaDisabled(false); | ||
|
||
BulkEditSearchPane.uploadFile(userBarcodesFileName); | ||
BulkEditSearchPane.checkForUploading(userBarcodesFileName); | ||
BulkEditSearchPane.waitFileUploading(); | ||
BulkEditSearchPane.verifyMatchedResults(user.barcode); | ||
|
||
TopMenuNavigation.navigateToApp('Users'); | ||
UsersSearchPane.waitLoading(); | ||
UsersSearchPane.searchByUsername(user.username); | ||
|
||
TopMenuNavigation.navigateToApp('Bulk edit'); | ||
BulkEditSearchPane.verifyMatchedResults(user.barcode); | ||
cy.reload(); | ||
BulkEditSearchPane.verifyMatchedResults(user.barcode); | ||
}, | ||
); | ||
}); | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
139 changes: 139 additions & 0 deletions
139
...importing-edifact-files/edifact-file-with-file-extention-txt-imports-without-errors.cy.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,139 @@ | ||
import { | ||
ACCEPTED_DATA_TYPE_NAMES, | ||
BATCH_GROUP, | ||
FOLIO_RECORD_TYPE, | ||
JOB_STATUS_NAMES, | ||
PAYMENT_METHOD, | ||
INVOICE_STATUSES, | ||
} from '../../../support/constants'; | ||
import { Permissions } from '../../../support/dictionary'; | ||
import InvoiceLineDetails from '../../../support/fragments/invoices/invoiceLineDetails'; | ||
import ActionProfiles from '../../../support/fragments/data_import/action_profiles/actionProfiles'; | ||
import DataImport from '../../../support/fragments/data_import/dataImport'; | ||
import JobProfiles from '../../../support/fragments/data_import/job_profiles/jobProfiles'; | ||
import NewJobProfile from '../../../support/fragments/data_import/job_profiles/newJobProfile'; | ||
import FileDetails from '../../../support/fragments/data_import/logs/fileDetails'; | ||
import Logs from '../../../support/fragments/data_import/logs/logs'; | ||
import FieldMappingProfileView from '../../../support/fragments/data_import/mapping_profiles/fieldMappingProfileView'; | ||
import FieldMappingProfiles from '../../../support/fragments/data_import/mapping_profiles/fieldMappingProfiles'; | ||
import NewFieldMappingProfile from '../../../support/fragments/data_import/mapping_profiles/newFieldMappingProfile'; | ||
import SettingsMenu from '../../../support/fragments/settingsMenu'; | ||
import TopMenu from '../../../support/fragments/topMenu'; | ||
import Users from '../../../support/fragments/users/users'; | ||
import getRandomPostfix from '../../../support/utils/stringTools'; | ||
import Organizations from '../../../support/fragments/organizations/organizations'; | ||
|
||
describe('data-import', () => { | ||
describe('Importing EDIFACT files', () => { | ||
const testData = { | ||
profileForDuplicate: FieldMappingProfiles.mappingProfileForDuplicate.hein, | ||
filePathForUpload: 'ediFileForC350716.txt', | ||
fileName: `C350715 autotestFile${getRandomPostfix()}.txt`, | ||
}; | ||
const organization = { | ||
name: `WS Hein ${getRandomPostfix()}`, | ||
code: `Hein ${getRandomPostfix()}`, | ||
status: 'Active', | ||
isVendor: true, | ||
}; | ||
const mappingProfile = { | ||
name: `C350716 Import Hein Serials Invoice ${getRandomPostfix()}`, | ||
incomingRecordType: NewFieldMappingProfile.incomingRecordType.edifact, | ||
typeValue: FOLIO_RECORD_TYPE.INVOICE, | ||
description: '', | ||
batchGroup: BATCH_GROUP.FOLIO, | ||
organizationName: organization.name, | ||
paymentMethod: PAYMENT_METHOD.CASH, | ||
currency: 'USD', | ||
}; | ||
const actionProfile = { | ||
name: `C350716 Import Hein subscription invoice ${getRandomPostfix()}`, | ||
typeValue: FOLIO_RECORD_TYPE.INVOICE, | ||
}; | ||
const jobProfile = { | ||
...NewJobProfile.defaultJobProfile, | ||
profileName: `C350716 Import Hein Subscription Invoice ${getRandomPostfix()}`, | ||
acceptedType: ACCEPTED_DATA_TYPE_NAMES.EDIFACT, | ||
}; | ||
|
||
before('login', () => { | ||
cy.createTempUser([ | ||
Permissions.moduleDataImportEnabled.gui, | ||
Permissions.settingsDataImportEnabled.gui, | ||
Permissions.uiOrganizationsViewEditCreate.gui, | ||
Permissions.uiInvoicesCanViewInvoicesAndInvoiceLines.gui, | ||
]).then((userProperties) => { | ||
testData.user = userProperties; | ||
cy.login(testData.user.username, testData.user.password, { | ||
path: SettingsMenu.mappingProfilePath, | ||
waiter: FieldMappingProfiles.waitLoading, | ||
}); | ||
}); | ||
}); | ||
|
||
after('delete test data', () => { | ||
cy.getAdminToken().then(() => { | ||
Users.deleteViaApi(testData.user.userId); | ||
JobProfiles.deleteJobProfile(jobProfile.profileName); | ||
ActionProfiles.deleteActionProfile(actionProfile.name); | ||
FieldMappingProfileView.deleteViaApi(mappingProfile.name); | ||
}); | ||
}); | ||
|
||
it( | ||
'C350716 Ensure an EDIFACT file with file extension .txt imports without errors (folijet)', | ||
{ tags: ['extendedPath', 'folijet'] }, | ||
() => { | ||
Organizations.createOrganizationViaApi(organization).then((response) => { | ||
testData.organization = response; | ||
}); | ||
|
||
// create Field mapping profile | ||
FieldMappingProfiles.waitLoading(); | ||
FieldMappingProfiles.createInvoiceMappingProfile( | ||
mappingProfile, | ||
testData.profileForDuplicate, | ||
); | ||
FieldMappingProfiles.checkMappingProfilePresented(mappingProfile.name); | ||
|
||
// create Action profile and link it to Field mapping profile | ||
cy.visit(SettingsMenu.actionProfilePath); | ||
ActionProfiles.create(actionProfile, mappingProfile.name); | ||
ActionProfiles.checkActionProfilePresented(actionProfile.name); | ||
|
||
// create Job profile | ||
cy.visit(SettingsMenu.jobProfilePath); | ||
JobProfiles.createJobProfile(jobProfile); | ||
NewJobProfile.linkActionProfile(actionProfile); | ||
NewJobProfile.saveAndClose(); | ||
JobProfiles.checkJobProfilePresented(jobProfile.profileName); | ||
|
||
// upload a marc file | ||
cy.visit(TopMenu.dataImportPath); | ||
// TODO delete function after fix https://issues.folio.org/browse/MODDATAIMP-691 | ||
DataImport.verifyUploadState(); | ||
DataImport.uploadFile(testData.filePathForUpload, testData.fileName); | ||
JobProfiles.waitFileIsUploaded(); | ||
JobProfiles.search(jobProfile.profileName); | ||
JobProfiles.selectJobProfile(); | ||
JobProfiles.runImportFile(); | ||
JobProfiles.waitFileIsImported(testData.fileName); | ||
Logs.checkImportFile(jobProfile.profileName); | ||
Logs.checkStatusOfJobProfile(JOB_STATUS_NAMES.COMPLETED); | ||
Logs.openFileDetails(testData.fileName); | ||
FileDetails.verifyEachInvoiceStatusInColunm('Created'); | ||
FileDetails.openInvoiceLine('Created'); | ||
|
||
InvoiceLineDetails.checkInvoiceLineDetails({ | ||
invoiceLineInformation: [ | ||
{ key: 'Description', value: 'COLLECTED COURSES OF ACADEMY OF EUROPEAN LAW' }, | ||
{ key: 'Invoice line number', value: '1' }, | ||
{ key: 'Status', value: INVOICE_STATUSES.OPEN }, | ||
{ key: 'Quantity', value: '1' }, | ||
{ key: 'Sub-total', value: '$95.00' }, | ||
], | ||
}); | ||
}, | ||
); | ||
}); | ||
}); |
Oops, something went wrong.