mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
* wip: restructure to monorepo Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * refactor create-release-pr to a package Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * build fixes Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * github workflow fixes Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix typo Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * add webpack-env types to core Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix github workflows Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * refactor/fix integration tests Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * lint fix Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * yarn run dev Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * eslint settings for vscode Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * move templates to right package Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * open-lens build fixes Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * integration test fix Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix nx task dependencies Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * use bash shell for unit tests in test workflow Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix test:unit for windows Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix win-ca webpack error in open-lens Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix win-ca webpack error in open-lens Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * fix build:app on windows Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * remove ELECTRON_BUILDER_EXTRA_ARGS Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * sync src/ from master Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> * remove Makefile from core Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com> Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
63 lines
1.6 KiB
TypeScript
63 lines
1.6 KiB
TypeScript
/**
|
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
*/
|
|
import type { StartableStoppable } from "./get-startable-stoppable";
|
|
import { getStartableStoppable } from "./get-startable-stoppable";
|
|
|
|
describe("getStartableStoppable", () => {
|
|
let stopMock: jest.MockedFunction<() => void>;
|
|
let startMock: jest.MockedFunction<() => () => void>;
|
|
let actual: StartableStoppable;
|
|
|
|
beforeEach(() => {
|
|
stopMock = jest.fn();
|
|
startMock = jest.fn().mockImplementation(() => stopMock);
|
|
actual = getStartableStoppable("some-id", startMock);
|
|
});
|
|
|
|
it("does not start yet", () => {
|
|
expect(startMock).not.toHaveBeenCalled();
|
|
});
|
|
|
|
it("does not stop yet", () => {
|
|
expect(stopMock).not.toHaveBeenCalled();
|
|
});
|
|
|
|
it("when stopping before ever starting, throws", () => {
|
|
expect(() => actual.stop()).toThrow("Tried to stop \"some-id\", but it is already stopped.");
|
|
});
|
|
|
|
it("is not started", () => {
|
|
expect(actual.started).toBe(false);
|
|
});
|
|
|
|
describe("when started", () => {
|
|
beforeEach(() => {
|
|
actual.start();
|
|
});
|
|
|
|
it("calls start function", () => {
|
|
expect(startMock).toHaveBeenCalled();
|
|
});
|
|
|
|
it("is started", () => {
|
|
expect(actual.started).toBe(true);
|
|
});
|
|
|
|
describe("when stopped", () => {
|
|
beforeEach(() => {
|
|
actual.stop();
|
|
});
|
|
|
|
it("calls stop function", () => {
|
|
expect(stopMock).toBeCalled();
|
|
});
|
|
|
|
it("is stopped", () => {
|
|
expect(actual.started).toBe(false);
|
|
});
|
|
});
|
|
});
|
|
});
|