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 @@ -40,7 +40,7 @@ describe('MARC', () => {

const controlFieldContents = [
{ tag: testData.tag002, content: '$a FOLIO23491' },
// { tag: testData.tag003, content: 'FOLIO23492' }, uncoment after UIQM-787 is done
{ tag: testData.tag003, content: '$a FOLIO23492' },
{ tag: testData.tag004, content: '$a FOLIO23493' },
{ tag: testData.tag009, content: '$a FOLIO23494' },
];
Expand All @@ -52,9 +52,9 @@ describe('MARC', () => {

const controlFieldContentsAfterSave = [
{ tag: testData.tag002, content: controlFieldContents[0].content },
// { tag: testData.tag003, content: controlFieldContents[1].content }, uncoment after UIQM-787 is done
{ tag: testData.tag004, content: controlFieldContents[1].content },
{ tag: testData.tag009, content: controlFieldContents[2].content },
{ tag: testData.tag003, content: controlFieldContents[1].content },
{ tag: testData.tag004, content: controlFieldContents[2].content },
{ tag: testData.tag009, content: controlFieldContents[3].content },
];

const expectedSourceControlFields = controlFieldContentsAfterSave.map(
Expand Down Expand Up @@ -129,10 +129,10 @@ describe('MARC', () => {
QuickMarcEditor.checkContent(field.content, 4 + index);
});
regularFieldContents.forEach((field, index) => {
QuickMarcEditor.addNewField(field.tag, field.content, 6 + index);
QuickMarcEditor.addNewField(field.tag, field.content, 7 + index);
});
regularFieldContents.forEach((field, index) => {
QuickMarcEditor.checkContent(field.content, 7 + index);
QuickMarcEditor.checkContent(field.content, 8 + index);
});

// 5. Click on the "Save & close" button
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ describe('MARC', () => {

const controlFieldContents = [
{ tag: testData.tag002, content: 'FOLIO23491' },
// { tag: testData.tag003, content: 'FOLIO23492' }, uncoment after UIQM-787 is done
{ tag: testData.tag003, content: 'FOLIO23492' },
{ tag: testData.tag004, content: 'FOLIO23493' },
{ tag: testData.tag009, content: 'FOLIO23494' },
];
Expand All @@ -51,9 +51,9 @@ describe('MARC', () => {

const controlFieldContentsAfterSave = [
{ tag: testData.tag002, content: controlFieldContents[0].content },
// { tag: testData.tag003, content: controlFieldContents[1].content }, uncoment after UIQM-787 is done
{ tag: testData.tag004, content: controlFieldContents[1].content },
{ tag: testData.tag009, content: controlFieldContents[2].content },
{ tag: testData.tag003, content: controlFieldContents[1].content },
{ tag: testData.tag004, content: controlFieldContents[2].content },
{ tag: testData.tag009, content: controlFieldContents[3].content },
];

const expectedSourceControlFields = controlFieldContentsAfterSave.map(
Expand Down Expand Up @@ -132,10 +132,10 @@ describe('MARC', () => {
QuickMarcEditor.checkContent(field.content, 4 + index);
});
regularFieldContents.forEach((field, index) => {
QuickMarcEditor.addNewField(field.tag, field.content, 6 + index);
QuickMarcEditor.addNewField(field.tag, field.content, 7 + index);
});
regularFieldContents.forEach((field, index) => {
QuickMarcEditor.checkContent(field.content, 7 + index);
QuickMarcEditor.checkContent(field.content, 8 + index);
});

// 5. Click on the "Save & close" button
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { DEFAULT_JOB_PROFILE_NAMES } from '../../../../support/constants';
import { APPLICATION_NAMES, DEFAULT_JOB_PROFILE_NAMES } from '../../../../support/constants';
import Permissions from '../../../../support/dictionary/permissions';
import DataImport from '../../../../support/fragments/data_import/dataImport';
import MarcAuthorities from '../../../../support/fragments/marcAuthority/marcAuthorities';
Expand All @@ -8,6 +8,9 @@ import TopMenu from '../../../../support/fragments/topMenu';
import Users from '../../../../support/fragments/users/users';
import getRandomPostfix from '../../../../support/utils/stringTools';
import { getAuthoritySpec } from '../../../../support/api/specifications-helper';
import ExportFile from '../../../../support/fragments/data-export/exportFile';
import TopMenuNavigation from '../../../../support/fragments/topMenuNavigation';
import FileManager from '../../../../support/utils/fileManager';

describe('MARC', () => {
describe('MARC Authority', () => {
Expand All @@ -32,7 +35,7 @@ describe('MARC', () => {
newContentFor110Field:
'$a C503163 Edit MARC auth which has control fields with or without subfield Sa test',
tag002: '002',
// tag003: '003', uncoment after UIQM-787 is done (and update the .mrc file)
tag003: '003',
tag004: '004',
tag009: '009',
editMarcHeader: /Edit .*MARC authority record/,
Expand All @@ -44,16 +47,16 @@ describe('MARC', () => {

const controlFieldWithoutIndicator = [
{ tag: testData.tag002, content: 'FOLIO23491', rowIndex: 3 },
// { tag: testData.tag003, content: 'FOLIO23492' }, uncoment after UIQM-787 is done
{ tag: testData.tag004, content: 'FOLIO23493', rowIndex: 4 },
{ tag: testData.tag009, content: 'FOLIO23494', rowIndex: 5 },
{ tag: testData.tag003, content: 'FOLIO23492', rowIndex: 4 },
{ tag: testData.tag004, content: 'FOLIO23493', rowIndex: 5 },
{ tag: testData.tag009, content: 'FOLIO23494', rowIndex: 6 },
];

const controlFieldWithIndicator = [
{ tag: testData.tag002, content: '$a FOLIO23491', rowIndex: 3 },
// { tag: testData.tag003, content: '$a FOLIO23492' }, uncoment after UIQM-787 is done
{ tag: testData.tag004, content: '$a FOLIO23491', rowIndex: 4 },
{ tag: testData.tag009, content: '$a FOLIO23491', rowIndex: 5 },
{ tag: testData.tag003, content: '$a FOLIO23492', rowIndex: 4 },
{ tag: testData.tag004, content: '$a FOLIO23491', rowIndex: 5 },
{ tag: testData.tag009, content: '$a FOLIO23491', rowIndex: 6 },
];

const expectedSourceControlFieldsWithoutIndicator = controlFieldWithoutIndicator.map(
Expand All @@ -64,6 +67,9 @@ describe('MARC', () => {
(field) => `${field.tag}\t${field.content}`,
);

const csvFile = `C503163 exportedCSVFile${getRandomPostfix()}.csv`;
const exportedMarcFile = `C503163 exportedMarcFile${getRandomPostfix()}.mrc`;

before('Creating data', () => {
cy.getAdminToken();
MarcAuthorities.deleteMarcAuthorityByTitleViaAPI('C503163*');
Expand All @@ -73,6 +79,8 @@ describe('MARC', () => {
Permissions.uiQuickMarcQuickMarcAuthoritiesEditorAll.gui,
Permissions.specificationStorageGetSpecificationFields.gui,
Permissions.specificationStorageCreateSpecificationField.gui,
Permissions.dataExportUploadExportDownloadFileViewLogs.gui,
Permissions.dataExportViewAddUpdateProfiles.gui,
]).then((createdUserProperties) => {
testData.userProperties = createdUserProperties;

Expand Down Expand Up @@ -105,6 +113,9 @@ describe('MARC', () => {

after('Deleting data', () => {
cy.getAdminToken();
FileManager.deleteFolder(Cypress.config('downloadsFolder'));
FileManager.deleteFile(`cypress/fixtures/${exportedMarcFile}`);
FileManager.deleteFile(`cypress/fixtures/${csvFile}`);
if (createdAuthorityID) MarcAuthority.deleteViaAPI(createdAuthorityID);
Users.deleteViaApi(testData.userProperties.userId);
if (localFieldId) {
Expand All @@ -130,8 +141,8 @@ describe('MARC', () => {
});

// 2. Update any field, ex.: add test in the "110" field
QuickMarcEditor.updateExistingFieldContent(10, testData.newContentFor110Field); // update index +1 after UIQM-787
QuickMarcEditor.checkContent(testData.newContentFor110Field, 10);
QuickMarcEditor.updateExistingFieldContent(11, testData.newContentFor110Field);
QuickMarcEditor.checkContent(testData.newContentFor110Field, 11);

// 3. Click on the "Save & close" button.
MarcAuthority.clickSaveAndCloseButton();
Expand Down Expand Up @@ -187,6 +198,27 @@ describe('MARC', () => {
controlFieldWithoutIndicator.forEach((field, index) => {
QuickMarcEditor.checkContent(field.content, 3 + index);
});

// 10. Export edited record
QuickMarcEditor.closeAuthorityEditorPane();
MarcAuthorities.checkSelectAuthorityRecordCheckbox(testData.title);
MarcAuthorities.checkSelectAuthorityRecordCheckboxChecked(testData.title);
MarcAuthorities.verifyTextOfPaneHeaderMarcAuthority('1 record selected');
MarcAuthorities.exportSelected();
cy.wait(1000);
ExportFile.downloadCSVFile(csvFile, 'QuickAuthorityExport*');

// 11. Go to "Data export" app and download exported ".mrc" file
TopMenuNavigation.navigateToApp(APPLICATION_NAMES.DATA_EXPORT);
ExportFile.uploadFile(csvFile);
ExportFile.exportWithDefaultJobProfile(csvFile, 'Default authority', 'Authorities');
ExportFile.downloadExportedMarcFile(exportedMarcFile);
ExportFile.verifyFileIncludes(exportedMarcFile, [
'FOLIO23491',
'FOLIO23492',
'FOLIO23493',
'FOLIO23494',
]);
},
);
});
Expand Down
2 changes: 1 addition & 1 deletion cypress/fixtures/marcAuthFileForC503163.mrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
00492cz a2200169n 45000010008000000020011000080040011000190090011000300050017000410080041000580350023000990400032001220420009001541100080001634100049002436700030002926531319FOLIO23491FOLIO23493FOLIO2349420081202071231.0050504n| acannaabn |a ana  a(OCoLC)oca06624973 aSaPrNLbengcSaPrNLdSaPrNL asanb2 aC503163 Edit MARC auth which has control fields with or without subfield Sa2 aDC Talk (Musical group).tFanaties vir Jesus aFanaties vir Jesus, 2001.
00515cz a2200181n 45000010008000000020011000080030011000190040011000300090011000410050017000520080041000690350023001100400032001330420009001651100080001744100049002546700030003036531319FOLIO23491FOLIO23492FOLIO23493FOLIO2349420081202071231.0050504n| acannaabn |a ana  a(OCoLC)oca06624973 aSaPrNLbengcSaPrNLdSaPrNL asanb2 aC503163 Edit MARC auth which has control fields with or without subfield Sa2 aDC Talk (Musical group).tFanaties vir Jesus aFanaties vir Jesus, 2001.
Loading