diff --git a/src/lib/db/strategy-store.ts b/src/lib/db/strategy-store.ts index 2af9bf4f96..be5347925d 100644 --- a/src/lib/db/strategy-store.ts +++ b/src/lib/db/strategy-store.ts @@ -155,13 +155,10 @@ export default class StrategyStore implements IStrategyStore { await this.db(TABLE).insert(rowData).onConflict(['name']).merge(); } - async dropStrategies(): Promise { + async dropCustomStrategies(): Promise { await this.db(TABLE) .where({ built_in: 0 }) // eslint-disable-line - .delete() - .catch((err) => - this.logger.error('Could not drop strategies, error: ', err), - ); + .delete(); } } diff --git a/src/lib/services/state-service.ts b/src/lib/services/state-service.ts index 329e64738a..843ebe44a1 100644 --- a/src/lib/services/state-service.ts +++ b/src/lib/services/state-service.ts @@ -315,7 +315,7 @@ export default class StateService { if (dropBeforeImport) { this.logger.info('Dropping existing strategies'); - await this.strategyStore.deleteAll(); + await this.strategyStore.dropCustomStrategies(); await this.eventStore.store({ type: DROP_STRATEGIES, createdBy: userName, diff --git a/src/lib/types/stores/strategy-store.ts b/src/lib/types/stores/strategy-store.ts index 090812a8b2..d041c964a8 100644 --- a/src/lib/types/stores/strategy-store.ts +++ b/src/lib/types/stores/strategy-store.ts @@ -37,4 +37,5 @@ export interface IStrategyStore extends Store { deprecateStrategy({ name }: Pick): Promise; reactivateStrategy({ name }: Pick): Promise; importStrategy(data: IMinimalStrategy): Promise; + dropCustomStrategies(): Promise; } diff --git a/src/test/fixtures/fake-strategies-store.ts b/src/test/fixtures/fake-strategies-store.ts index 24374d7abf..11a225243f 100644 --- a/src/test/fixtures/fake-strategies-store.ts +++ b/src/test/fixtures/fake-strategies-store.ts @@ -64,10 +64,6 @@ export default class FakeStrategiesStore implements IStrategyStore { destroy(): void {} - async dropStrategies(): Promise { - return this.deleteAll(); - } - async exists(key: string): Promise { return this.strategies.some((s) => s.name === key && !s.deprecated); } @@ -119,4 +115,8 @@ export default class FakeStrategiesStore implements IStrategyStore { await this.delete(update.name); return this.createStrategy(update); } + + async dropCustomStrategies(): Promise { + return this.deleteAll(); + } }