Skip to content

Commit af79a04

Browse files
committed
fix: progressbar for flexipage
1 parent 5ed1341 commit af79a04

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

src/migration/related/FlexipageMigration.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -103,15 +103,18 @@ export class FlexipageMigration extends BaseRelatedObjectMigration {
103103
const files = fs.readdirSync(flexiPageDir).filter((file) => file.endsWith('.xml'));
104104
Logger.logVerbose(this.messages.getMessage('foundFlexiPages', [files.length]));
105105
const progressBar = createProgressBar('Migrating', 'Flexipage');
106-
progressBar.setTotal(files.length);
106+
progressBar.start(files.length, 0);
107107
const flexPageAssessmentInfos: FlexiPageAssessmentInfo[] = [];
108108

109+
const errors: Set<string> = new Set();
110+
109111
for (const file of files) {
110112
Logger.logVerbose(this.messages.getMessage('processingFlexiPage', [file]));
111113
const filePath = path.join(flexiPageDir, file);
112114
try {
113115
const flexPageAssessmentInfo: FlexiPageAssessmentInfo = this.processFlexiPage(file, filePath, mode);
114116
if (!flexPageAssessmentInfo) {
117+
progressBar.increment();
115118
continue;
116119
}
117120
flexPageAssessmentInfos.push(flexPageAssessmentInfo);
@@ -124,17 +127,16 @@ export class FlexipageMigration extends BaseRelatedObjectMigration {
124127
} catch (error) {
125128
let status: 'Failed' | 'Needs Manual Intervention' = 'Failed';
126129
if (error instanceof KeyNotFoundInStorageError) {
127-
Logger.error(`${error.componentType} ${error.key} can't be migrated`);
130+
errors.add(`${error.componentType} ${error.key} can't be migrated`);
128131
status = 'Needs Manual Intervention';
129132
} else if (error instanceof TargetPropertyNotFoundError) {
130-
Logger.error(error.message);
133+
errors.add(error.message);
131134
status = 'Needs Manual Intervention';
132135
} else if (error instanceof DuplicateKeyError) {
133-
Logger.error(`${error.componentType} ${error.key} is duplicate`);
136+
errors.add(`${error.componentType} ${error.key} is duplicate`);
134137
status = 'Needs Manual Intervention';
135138
} else {
136-
Logger.error(this.messages.getMessage('errorProcessingFlexiPage', [file, error]));
137-
Logger.error(error);
139+
errors.add(this.messages.getMessage('errorProcessingFlexiPage', [file, error]));
138140
status = 'Failed';
139141
}
140142
flexPageAssessmentInfos.push({
@@ -148,6 +150,9 @@ export class FlexipageMigration extends BaseRelatedObjectMigration {
148150
progressBar.increment();
149151
}
150152
progressBar.stop();
153+
if (errors.size > 0) {
154+
errors.forEach((error) => Logger.error(error));
155+
}
151156
Logger.logVerbose(this.messages.getMessage('completedProcessingAllFlexiPages', [flexPageAssessmentInfos.length]));
152157
Logger.log(this.messages.getMessage('flexipagesWithChanges', [flexPageAssessmentInfos.length]));
153158
return flexPageAssessmentInfos;

test/migration/related/FlexipageMigration.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ interface MockShell {
5151
}
5252

5353
interface MockCreateProgressBar {
54-
setTotal: sinon.SinonStub;
54+
start: sinon.SinonStub;
5555
increment: sinon.SinonStub;
5656
stop: sinon.SinonStub;
5757
}
@@ -192,7 +192,7 @@ describe('FlexipageMigration', () => {
192192
};
193193

194194
mockCreateProgressBar = {
195-
setTotal: sandbox.stub(),
195+
start: sandbox.stub(),
196196
increment: sandbox.stub(),
197197
stop: sandbox.stub(),
198198
};

0 commit comments

Comments
 (0)