[MM-40406] Add more singletons, refactor main.ts into pieces, add tests and some cleanup + tests for additional coverage (#1890)
* Refactor main.ts dependencies into singleton pattern * Split main.ts into testable pieces, some other refactoring for singleton pattern * Unit tests for main/app/app * Unit tests for main/app/config * Unit tests for main/app/initialize * Unit tests for main/app/intercom * Unit tests for main/app/utils * Add some more tests to get to 70% coverage * Fix for linux * Fix for alternate data dir paths * Fix E2E test
This commit is contained in:
@@ -5,14 +5,18 @@
|
||||
|
||||
import fs from 'fs';
|
||||
|
||||
import {ipcMain} from 'electron';
|
||||
import log from 'electron-log';
|
||||
|
||||
import {TrustedOrigin, PermissionType} from 'types/trustedOrigin';
|
||||
|
||||
import {UPDATE_PATHS} from 'common/communication';
|
||||
import urlUtils from 'common/utils/url';
|
||||
|
||||
import * as Validator from './Validator';
|
||||
export default class TrustedOriginsStore {
|
||||
import {trustedOriginsStoreFile} from './constants';
|
||||
|
||||
export class TrustedOriginsStore {
|
||||
storeFile: string;
|
||||
data?: Map<string, TrustedOrigin>;
|
||||
|
||||
@@ -108,3 +112,13 @@ export default class TrustedOriginsStore {
|
||||
return urlPermissions ? urlPermissions[permission] : undefined;
|
||||
}
|
||||
}
|
||||
|
||||
const trustedOriginsStore = new TrustedOriginsStore(trustedOriginsStoreFile);
|
||||
export default trustedOriginsStore;
|
||||
|
||||
ipcMain.on(UPDATE_PATHS, () => {
|
||||
trustedOriginsStore.storeFile = trustedOriginsStoreFile;
|
||||
if (trustedOriginsStore.data) {
|
||||
trustedOriginsStore.load();
|
||||
}
|
||||
});
|
||||
|
Reference in New Issue
Block a user