mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Remove injectable for time since we should just use useMockTime
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
3ef643190c
commit
f14e603592
@ -3,7 +3,7 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import getSecondsFromUnixEpochInjectable from "../../../utils/date/get-seconds-from-unix-epoch.injectable";
|
import { getSecondsFromUnixEpoch } from "../../../utils/date/get-current-date-time";
|
||||||
import { apiBaseInjectionToken } from "../../api-base";
|
import { apiBaseInjectionToken } from "../../api-base";
|
||||||
import type { MetricData } from "../metrics.api";
|
import type { MetricData } from "../metrics.api";
|
||||||
|
|
||||||
@ -47,7 +47,6 @@ const requestMetricsInjectable = getInjectable({
|
|||||||
id: "request-metrics",
|
id: "request-metrics",
|
||||||
instantiate: (di) => {
|
instantiate: (di) => {
|
||||||
const apiBase = di.inject(apiBaseInjectionToken);
|
const apiBase = di.inject(apiBaseInjectionToken);
|
||||||
const getSecondsFromUnixEpoch = di.inject(getSecondsFromUnixEpochInjectable);
|
|
||||||
|
|
||||||
return (async (query: object, params: RequestMetricsParams = {}) => {
|
return (async (query: object, params: RequestMetricsParams = {}) => {
|
||||||
const { range = 3600, step = 60, namespace } = params;
|
const { range = 3600, step = 60, namespace } = params;
|
||||||
|
|||||||
@ -5,3 +5,7 @@
|
|||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
|
||||||
export const getCurrentDateTime = () => moment().utc().format();
|
export const getCurrentDateTime = () => moment().utc().format();
|
||||||
|
|
||||||
|
export const getMillisecondsFromUnixEpoch = () => Date.now();
|
||||||
|
|
||||||
|
export const getSecondsFromUnixEpoch = () => Math.floor(getMillisecondsFromUnixEpoch() / 1000);
|
||||||
|
|||||||
@ -1,13 +0,0 @@
|
|||||||
/**
|
|
||||||
* 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";
|
|
||||||
|
|
||||||
const getMillisecondsFromUnixEpochInjectable = getInjectable({
|
|
||||||
id: "get-milliseconds-from-unix-epoch",
|
|
||||||
instantiate: () => () => Date.now(),
|
|
||||||
causesSideEffects: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default getMillisecondsFromUnixEpochInjectable;
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
/**
|
|
||||||
* 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 getMillisecondsFromUnixEpochInjectable from "./get-milliseconds-from-unix-epoch.injectable";
|
|
||||||
|
|
||||||
const getSecondsFromUnixEpochInjectable = getInjectable({
|
|
||||||
id: "get-seconds-from-unix-epoch",
|
|
||||||
instantiate: (di) => {
|
|
||||||
const getMilisecondsFromUnixEpoch = di.inject(getMillisecondsFromUnixEpochInjectable);
|
|
||||||
|
|
||||||
return () => Math.floor(getMilisecondsFromUnixEpoch() / 1000);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
export default getSecondsFromUnixEpochInjectable;
|
|
||||||
@ -7,7 +7,7 @@ import { capitalize } from "lodash";
|
|||||||
import { when } from "mobx";
|
import { when } from "mobx";
|
||||||
import helmChartVersionsInjectable from "../+helm-charts/helm-charts/versions.injectable";
|
import helmChartVersionsInjectable from "../+helm-charts/helm-charts/versions.injectable";
|
||||||
import type { HelmRelease, HelmReleaseDto } from "../../../common/k8s-api/endpoints/helm-releases.api";
|
import type { HelmRelease, HelmReleaseDto } from "../../../common/k8s-api/endpoints/helm-releases.api";
|
||||||
import getMillisecondsFromUnixEpochInjectable from "../../../common/utils/date/get-milliseconds-from-unix-epoch.injectable";
|
import { getMillisecondsFromUnixEpoch } from "../../../common/utils/date/get-current-date-time";
|
||||||
import { formatDuration } from "../../utils";
|
import { formatDuration } from "../../utils";
|
||||||
|
|
||||||
export type ToHelmRelease = (release: HelmReleaseDto) => HelmRelease;
|
export type ToHelmRelease = (release: HelmReleaseDto) => HelmRelease;
|
||||||
@ -16,7 +16,6 @@ const toHelmReleaseInjectable = getInjectable({
|
|||||||
id: "to-helm-release",
|
id: "to-helm-release",
|
||||||
instantiate: (di): ToHelmRelease => {
|
instantiate: (di): ToHelmRelease => {
|
||||||
const helmChartVersions = (release: HelmRelease) => di.inject(helmChartVersionsInjectable, release);
|
const helmChartVersions = (release: HelmRelease) => di.inject(helmChartVersionsInjectable, release);
|
||||||
const getMillisecondsFromUnixEpoch = di.inject(getMillisecondsFromUnixEpochInjectable);
|
|
||||||
|
|
||||||
return (release) => ({
|
return (release) => ({
|
||||||
...release,
|
...release,
|
||||||
|
|||||||
@ -57,7 +57,6 @@ import activeKubernetesClusterInjectable from "../../cluster-frame-context/activ
|
|||||||
import { catalogEntityFromCluster } from "../../../main/cluster/manager";
|
import { catalogEntityFromCluster } from "../../../main/cluster/manager";
|
||||||
import namespaceStoreInjectable from "../+namespaces/store.injectable";
|
import namespaceStoreInjectable from "../+namespaces/store.injectable";
|
||||||
import { isAllowedResource } from "../../../common/cluster/is-allowed-resource";
|
import { isAllowedResource } from "../../../common/cluster/is-allowed-resource";
|
||||||
import getMillisecondsFromUnixEpochInjectable from "../../../common/utils/date/get-milliseconds-from-unix-epoch.injectable";
|
|
||||||
import createApplicationWindowInjectable from "../../../main/start-main-application/lens-window/application-window/create-application-window.injectable";
|
import createApplicationWindowInjectable from "../../../main/start-main-application/lens-window/application-window/create-application-window.injectable";
|
||||||
import type { CreateElectronWindow } from "../../../main/start-main-application/lens-window/application-window/create-electron-window.injectable";
|
import type { CreateElectronWindow } from "../../../main/start-main-application/lens-window/application-window/create-electron-window.injectable";
|
||||||
import createElectronWindowInjectable from "../../../main/start-main-application/lens-window/application-window/create-electron-window.injectable";
|
import createElectronWindowInjectable from "../../../main/start-main-application/lens-window/application-window/create-electron-window.injectable";
|
||||||
@ -113,12 +112,6 @@ export interface ApplicationBuilder {
|
|||||||
applicationMenu: {
|
applicationMenu: {
|
||||||
click: (path: string) => void;
|
click: (path: string) => void;
|
||||||
};
|
};
|
||||||
time: {
|
|
||||||
advanceBy: {
|
|
||||||
seconds: (value: number) => void;
|
|
||||||
milliseconds: (value: number) => void;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
preferences: {
|
preferences: {
|
||||||
close: () => void;
|
close: () => void;
|
||||||
navigate: () => void;
|
navigate: () => void;
|
||||||
@ -195,7 +188,6 @@ export const getApplicationBuilder = () => {
|
|||||||
runInAction(() => {
|
runInAction(() => {
|
||||||
windowDi.register(rendererExtensionsStateInjectable);
|
windowDi.register(rendererExtensionsStateInjectable);
|
||||||
});
|
});
|
||||||
windowDi.override(getMillisecondsFromUnixEpochInjectable, () => () => currentTimeMs);
|
|
||||||
|
|
||||||
windowDi.override(
|
windowDi.override(
|
||||||
currentlyInClusterFrameInjectable,
|
currentlyInClusterFrameInjectable,
|
||||||
@ -251,22 +243,9 @@ export const getApplicationBuilder = () => {
|
|||||||
mainDi.override(createElectronWindowInjectable, () => createElectronWindowFake);
|
mainDi.override(createElectronWindowInjectable, () => createElectronWindowFake);
|
||||||
|
|
||||||
let applicationHasStarted = false;
|
let applicationHasStarted = false;
|
||||||
let currentTimeMs = Date.parse("2000-01-01 12:00:00am");
|
|
||||||
|
|
||||||
mainDi.override(getMillisecondsFromUnixEpochInjectable, () => () => currentTimeMs);
|
|
||||||
|
|
||||||
const builder: ApplicationBuilder = {
|
const builder: ApplicationBuilder = {
|
||||||
mainDi,
|
mainDi,
|
||||||
time: {
|
|
||||||
advanceBy: {
|
|
||||||
milliseconds: (value) => {
|
|
||||||
currentTimeMs += value;
|
|
||||||
},
|
|
||||||
seconds: (value) => {
|
|
||||||
currentTimeMs += (value * 1000);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
applicationWindow: {
|
applicationWindow: {
|
||||||
closeAll: () => {
|
closeAll: () => {
|
||||||
const closeAll = mainDi.inject(closeAllWindowsInjectable);
|
const closeAll = mainDi.inject(closeAllWindowsInjectable);
|
||||||
|
|||||||
@ -24,7 +24,7 @@ import currentRouteComponentInjectable from "../../routes/current-route-componen
|
|||||||
import allowedResourcesInjectable from "../../cluster-frame-context/allowed-resources.injectable";
|
import allowedResourcesInjectable from "../../cluster-frame-context/allowed-resources.injectable";
|
||||||
import hostedClusterIdInjectable from "../../cluster-frame-context/hosted-cluster-id.injectable";
|
import hostedClusterIdInjectable from "../../cluster-frame-context/hosted-cluster-id.injectable";
|
||||||
import hostedClusterInjectable from "../../cluster-frame-context/hosted-cluster.injectable";
|
import hostedClusterInjectable from "../../cluster-frame-context/hosted-cluster.injectable";
|
||||||
import getMillisecondsFromUnixEpochInjectable from "../../../common/utils/date/get-milliseconds-from-unix-epoch.injectable";
|
import { useFakeTime } from "../../../common/test-utils/use-fake-time";
|
||||||
|
|
||||||
describe("<ClusterFrame />", () => {
|
describe("<ClusterFrame />", () => {
|
||||||
let render: () => RenderResult;
|
let render: () => RenderResult;
|
||||||
@ -45,7 +45,8 @@ describe("<ClusterFrame />", () => {
|
|||||||
di.override(legacyOnChannelListenInjectable, () => jest.fn().mockImplementation(() => jest.fn()));
|
di.override(legacyOnChannelListenInjectable, () => jest.fn().mockImplementation(() => jest.fn()));
|
||||||
di.override(directoryForUserDataInjectable, () => "/some/irrelavent/path");
|
di.override(directoryForUserDataInjectable, () => "/some/irrelavent/path");
|
||||||
di.override(storesAndApisCanBeCreatedInjectable, () => true);
|
di.override(storesAndApisCanBeCreatedInjectable, () => true);
|
||||||
di.override(getMillisecondsFromUnixEpochInjectable, () => () => Date.parse("2000-01-01 12:00:00am"));
|
|
||||||
|
useFakeTime("2000-01-01 12:00:00am");
|
||||||
|
|
||||||
const createCluster = di.inject(createClusterInjectable);
|
const createCluster = di.inject(createClusterInjectable);
|
||||||
|
|
||||||
|
|||||||
@ -11,7 +11,7 @@ import { Button } from "../components/button";
|
|||||||
import type { IpcRendererEvent } from "electron";
|
import type { IpcRendererEvent } from "electron";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import notificationsStoreInjectable from "../components/notifications/notifications-store.injectable";
|
import notificationsStoreInjectable from "../components/notifications/notifications-store.injectable";
|
||||||
import getMillisecondsFromUnixEpochInjectable from "../../common/utils/date/get-milliseconds-from-unix-epoch.injectable";
|
import { getMillisecondsFromUnixEpoch } from "../../common/utils/date/get-current-date-time";
|
||||||
|
|
||||||
const listNamespacesForbiddenHandlerInjectable = getInjectable({
|
const listNamespacesForbiddenHandlerInjectable = getInjectable({
|
||||||
id: "list-namespaces-forbidden-handler",
|
id: "list-namespaces-forbidden-handler",
|
||||||
@ -19,7 +19,6 @@ const listNamespacesForbiddenHandlerInjectable = getInjectable({
|
|||||||
instantiate: (di) => {
|
instantiate: (di) => {
|
||||||
const navigateToEntitySettings = di.inject(navigateToEntitySettingsInjectable);
|
const navigateToEntitySettings = di.inject(navigateToEntitySettingsInjectable);
|
||||||
const notificationsStore = di.inject(notificationsStoreInjectable);
|
const notificationsStore = di.inject(notificationsStoreInjectable);
|
||||||
const getMillisecondsFromUnixEpoch = di.inject(getMillisecondsFromUnixEpochInjectable);
|
|
||||||
const notificationLastDisplayedAt = new Map<string, number>();
|
const notificationLastDisplayedAt = new Map<string, number>();
|
||||||
const intervalBetweenNotifications = 1000 * 60; // 60s
|
const intervalBetweenNotifications = 1000 * 60; // 60s
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user