mirror of
https://github.com/hoverkraft-tech/compose-action.git
synced 2026-08-31 23:52:49 +08:00
Some checks failed
Internal - Main - Continuous Integration / ci (push) Has been cancelled
Need fix to Issue / main (push) Has been cancelled
Prepare release / release (push) Has been cancelled
Internal - Main - Continuous Integration / prepare-docs (push) Has been cancelled
Internal - Main - Continuous Integration / sync-docs (push) Has been cancelled
Mark stale issues and pull requests / main (push) Has been cancelled
Bumps the github-actions-dependencies group with 6 updates: --- updated-dependencies: - dependency-name: hoverkraft-tech/ci-github-common/.github/workflows/linter.yml dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies - dependency-name: hoverkraft-tech/ci-github-common/.github/workflows/greetings.yml dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies - dependency-name: hoverkraft-tech/ci-github-common dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies - dependency-name: hoverkraft-tech/ci-github-common/.github/workflows/need-fix-to-issue.yml dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies - dependency-name: hoverkraft-tech/ci-github-common/.github/workflows/semantic-pull-request.yml dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies - dependency-name: hoverkraft-tech/ci-github-common/.github/workflows/stale.yml dependency-version: 0.36.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: Emilien Escalle <emilien.escalle@escemi.com>
69 lines
2.0 KiB
TypeScript
69 lines
2.0 KiB
TypeScript
import { describe, expect, it, beforeEach, vi } from "vitest";
|
|
|
|
// Import types directly from the module
|
|
import type { LogLevel as LogLevelType } from "./logger.service.js";
|
|
|
|
// Mock @actions/core before importing the module under test
|
|
const warningMock = vi.fn();
|
|
const infoMock = vi.fn();
|
|
const debugMock = vi.fn();
|
|
|
|
vi.doMock("@actions/core", () => ({
|
|
warning: warningMock,
|
|
info: infoMock,
|
|
debug: debugMock,
|
|
}));
|
|
|
|
// Dynamic import after mock setup
|
|
const { LoggerService, LogLevel } = await import("./logger.service.js");
|
|
|
|
describe("LoggerService", () => {
|
|
let loggerService: InstanceType<typeof LoggerService>;
|
|
|
|
beforeEach(() => {
|
|
vi.clearAllMocks();
|
|
loggerService = new LoggerService();
|
|
});
|
|
|
|
describe("warn", () => {
|
|
it("should call warning with the correct message", () => {
|
|
const message = "This is a warning message";
|
|
loggerService.warn(message);
|
|
expect(warningMock).toHaveBeenCalledWith(message);
|
|
});
|
|
});
|
|
|
|
describe("info", () => {
|
|
it("should call info with the correct message", () => {
|
|
const message = "This is an info message";
|
|
loggerService.info(message);
|
|
expect(infoMock).toHaveBeenCalledWith(message);
|
|
});
|
|
});
|
|
|
|
describe("debug", () => {
|
|
it("should call debug with the correct message", () => {
|
|
const message = "This is a debug message";
|
|
loggerService.debug(message);
|
|
expect(debugMock).toHaveBeenCalledWith(message);
|
|
});
|
|
});
|
|
|
|
describe("getServiceLogger", () => {
|
|
it("should return the correct logger function for debug level", () => {
|
|
const logger = loggerService.getServiceLogger(LogLevel.Debug);
|
|
expect(logger).toBe(loggerService.debug);
|
|
});
|
|
|
|
it("should return the correct logger function for info level", () => {
|
|
const logger = loggerService.getServiceLogger(LogLevel.Info);
|
|
expect(logger).toBe(loggerService.info);
|
|
});
|
|
|
|
it("should default to info level if an unknown level is provided", () => {
|
|
const logger = loggerService.getServiceLogger("unknown" as LogLevelType);
|
|
expect(logger).toBe(loggerService.info);
|
|
});
|
|
});
|
|
});
|