1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Flag some side-effects and add general overrides

Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>

Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
This commit is contained in:
Iku-turso 2022-03-29 13:50:15 +03:00 committed by Janne Savolainen
parent 20805e27ff
commit 2e503b1698
No known key found for this signature in database
GPG Key ID: 8C6CFB2FFFE8F68A
5 changed files with 30 additions and 0 deletions

View File

@ -8,6 +8,7 @@ import { isLinux } from "../vars";
const isLinuxInjectable = getInjectable({
id: "is-linux",
instantiate: () => isLinux,
causesSideEffects: true,
});
export default isLinuxInjectable;

View File

@ -0,0 +1,14 @@
/**
* Copyright (c) OpenLens Authors. All rights reserved.
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
import { getInjectable } from "@ogre-tools/injectable";
import { isMac } from "../vars";
const isMacInjectable = getInjectable({
id: "is-mac",
instantiate: () => isMac,
causesSideEffects: true,
});
export default isMacInjectable;

View File

@ -8,6 +8,7 @@ import { isWindows } from "../vars";
const isWindowsInjectable = getInjectable({
id: "is-windows",
instantiate: () => isWindows,
causesSideEffects: true,
});
export default isWindowsInjectable;

View File

@ -27,6 +27,9 @@ import type { ClusterStore } from "../common/cluster-store/cluster-store";
import type { Cluster } from "../common/cluster/cluster";
import userStoreInjectable from "../common/user-store/user-store.injectable";
import type { UserStore } from "../common/user-store";
import isMacInjectable from "../common/vars/is-mac.injectable";
import isWindowsInjectable from "../common/vars/is-windows.injectable";
import isLinuxInjectable from "../common/vars/is-linux.injectable";
export const getDiForUnitTesting = (
{ doGeneralOverrides } = { doGeneralOverrides: false },
@ -48,6 +51,10 @@ export const getDiForUnitTesting = (
di.preventSideEffects();
if (doGeneralOverrides) {
di.override(isMacInjectable, () => true);
di.override(isWindowsInjectable, () => false);
di.override(isLinuxInjectable, () => false);
// eslint-disable-next-line unused-imports/no-unused-vars-ts
di.override(extensionsStoreInjectable, () => ({ isEnabled: ({ id, isBundled }) => false }) as ExtensionsStore);

View File

@ -25,6 +25,9 @@ import type { ClusterStore } from "../common/cluster-store/cluster-store";
import type { Cluster } from "../common/cluster/cluster";
import userStoreInjectable from "../common/user-store/user-store.injectable";
import type { UserStore } from "../common/user-store";
import isMacInjectable from "../common/vars/is-mac.injectable";
import isWindowsInjectable from "../common/vars/is-windows.injectable";
import isLinuxInjectable from "../common/vars/is-linux.injectable";
export const getDiForUnitTesting = (
{ doGeneralOverrides } = { doGeneralOverrides: false },
@ -45,6 +48,10 @@ export const getDiForUnitTesting = (
di.preventSideEffects();
if (doGeneralOverrides) {
di.override(isMacInjectable, () => true);
di.override(isWindowsInjectable, () => false);
di.override(isLinuxInjectable, () => false);
// eslint-disable-next-line unused-imports/no-unused-vars-ts
di.override(extensionsStoreInjectable, () => ({ isEnabled: ({ id, isBundled }) => false }) as ExtensionsStore);