Add .prettierrc.json and refactor test files for improved formatting consistency:

- Introduced `.prettierrc.json` to enforce consistent code formatting across the project.
- Updated unit and e2e test files to address formatting issues, improve readability, and ensure alignment with the new Prettier configuration.
This commit is contained in:
Jeppe Bundgaard
2026-04-13 09:13:27 +02:00
parent f040614f46
commit b39b458f4f
149 changed files with 7212 additions and 6178 deletions
@@ -1,5 +1,5 @@
// @vitest-environment jsdom
import { beforeEach, describe, expect, it, vi } from 'vitest';
import { beforeEach, describe, expect, it, vi } from "vitest";
const mocks = vi.hoisted(() => ({
swalFire: vi.fn(),
@@ -10,7 +10,7 @@ const mocks = vi.hoisted(() => ({
authenticatedRequest: vi.fn(),
}));
vi.mock('sweetalert2', () => ({
vi.mock("sweetalert2", () => ({
default: {
fire: mocks.swalFire,
showValidationMessage: mocks.swalShowValidationMessage,
@@ -18,11 +18,11 @@ vi.mock('sweetalert2', () => ({
},
}));
vi.mock('@/components/session/authenticatedRequest.vue', () => ({
vi.mock("@/components/session/authenticatedRequest.vue", () => ({
authenticatedRequest: mocks.authenticatedRequest,
}));
vi.mock('@/components/session/token/SessionUser/Objects/ObjectsGlobal.vue', () => ({
vi.mock("@/components/session/token/SessionUser/Objects/ObjectsGlobal.vue", () => ({
ObjectsGlobal: {
set: {
column: mocks.setColumn,
@@ -34,32 +34,32 @@ vi.mock('@/components/session/token/SessionUser/Objects/ObjectsGlobal.vue', () =
get: { objects: vi.fn(), object: vi.fn() },
delete: { object: vi.fn() },
language: {
field: () => 'Rediger arkiveret',
save: 'Gem',
cancel: 'Annuller',
clear: 'Ryd',
field: () => "Rediger arkiveret",
save: "Gem",
cancel: "Annuller",
clear: "Ryd",
},
},
}));
vi.mock('@/components/session/token/SessionUser.vue', () => ({
vi.mock("@/components/session/token/SessionUser.vue", () => ({
SessionUser: {
functions: {
parseErrorMessage: vi.fn(() => 'error'),
parseErrorMessage: vi.fn(() => "error"),
redirectTo: { superUser: vi.fn() },
currency: { toLocal: (value) => String(value) },
},
objects: {
global: {
language: {
no_data: 'Ingen data',
no_data: "Ingen data",
},
},
},
},
}));
vi.mock('@/i18n', () => ({
vi.mock("@/i18n", () => ({
default: {
global: {
t: (key) => key,
@@ -67,25 +67,25 @@ vi.mock('@/i18n', () => ({
},
}));
vi.mock('@/services/economicTransferQueue.js', () => ({
vi.mock("@/services/economicTransferQueue.js", () => ({
buildCollectedInvoiceEconomicPayload: vi.fn(() => ({})),
enqueueEconomicTransferJob: vi.fn(),
fetchEconomicTransferJobStatus: vi.fn(),
retryEconomicTransferJob: vi.fn(),
}));
vi.mock('@/components/displays/modals/PickCustomerInvoiceCollectionModal.vue', () => ({
vi.mock("@/components/displays/modals/PickCustomerInvoiceCollectionModal.vue", () => ({
default: {
name: 'PickCustomerInvoiceCollectionModalStub',
template: '<div />',
name: "PickCustomerInvoiceCollectionModalStub",
template: "<div />",
},
}));
import { CollectedOrderInvoices } from '@/components/session/token/SessionUser/Objects/CollectedOrderInvoices.vue';
import { CollectedOrderInvoices } from "@/components/session/token/SessionUser/Objects/CollectedOrderInvoices.vue";
describe('CollectedOrderInvoices closed_at edit modal', () => {
describe("CollectedOrderInvoices closed_at edit modal", () => {
beforeEach(() => {
document.body.innerHTML = '';
document.body.innerHTML = "";
mocks.swalFire.mockReset();
mocks.swalShowValidationMessage.mockReset();
mocks.swalClose.mockReset();
@@ -94,20 +94,20 @@ describe('CollectedOrderInvoices closed_at edit modal', () => {
mocks.authenticatedRequest.mockReset();
});
it('opens dedicated closed_at modal, normalizes date value, and saves API date', async () => {
it("opens dedicated closed_at modal, normalizes date value, and saves API date", async () => {
const onAfterSubmit = vi.fn();
mocks.setColumn.mockResolvedValue({});
mocks.swalFire.mockImplementation(async (options) => {
document.body.innerHTML = options.html;
options.didOpen?.();
const input = document.getElementById('collected-order-invoice-closed-at-input');
input.value = '2026-04-08';
const input = document.getElementById("collected-order-invoice-closed-at-input");
input.value = "2026-04-08";
await options.preConfirm();
return { isConfirmed: true };
});
await CollectedOrderInvoices.showEditObjectFieldForm(14560, 'closed_at', '2026-04-08 11:43:01', onAfterSubmit);
await CollectedOrderInvoices.showEditObjectFieldForm(14560, "closed_at", "2026-04-08 11:43:01", onAfterSubmit);
expect(mocks.swalFire).toHaveBeenCalledTimes(1);
const modalOptions = mocks.swalFire.mock.calls[0][0];
@@ -116,27 +116,27 @@ describe('CollectedOrderInvoices closed_at edit modal', () => {
expect(mocks.setColumn).toHaveBeenCalledTimes(1);
const setColumnArgs = mocks.setColumn.mock.calls[0];
expect(setColumnArgs[0]).toBe('/collected-invoices');
expect(setColumnArgs[0]).toBe("/collected-invoices");
expect(setColumnArgs[1]).toBe(14560);
expect(setColumnArgs[2]).toBe('closed_at');
expect(setColumnArgs[3]).toBe('2026-04-08');
expect(setColumnArgs[2]).toBe("closed_at");
expect(setColumnArgs[3]).toBe("2026-04-08");
expect(onAfterSubmit).toHaveBeenCalledTimes(1);
});
it('supports clearing closed_at and saves null', async () => {
it("supports clearing closed_at and saves null", async () => {
const onAfterSubmit = vi.fn();
mocks.setColumn.mockResolvedValue({});
mocks.swalFire.mockImplementation(async (options) => {
document.body.innerHTML = options.html;
options.didOpen?.();
const clearButton = document.getElementById('collected-order-invoice-closed-at-clear-button');
const clearButton = document.getElementById("collected-order-invoice-closed-at-clear-button");
clearButton.click();
await options.preConfirm();
return { isConfirmed: true };
});
await CollectedOrderInvoices.showEditObjectFieldForm(14561, 'closed_at', '2026-04-08 11:43:01', onAfterSubmit);
await CollectedOrderInvoices.showEditObjectFieldForm(14561, "closed_at", "2026-04-08 11:43:01", onAfterSubmit);
expect(mocks.setColumn).toHaveBeenCalledTimes(1);
expect(mocks.setColumn.mock.calls[0][3]).toBeNull();
@@ -144,18 +144,18 @@ describe('CollectedOrderInvoices closed_at edit modal', () => {
expect(mocks.swalShowValidationMessage).not.toHaveBeenCalled();
});
it('falls back to generic object editor for non-closed_at columns', async () => {
it("falls back to generic object editor for non-closed_at columns", async () => {
const onAfterSubmit = vi.fn();
mocks.showEditObjectFieldForm.mockResolvedValue({});
await CollectedOrderInvoices.showEditObjectFieldForm(11, 'name', 'Invoice name', onAfterSubmit);
await CollectedOrderInvoices.showEditObjectFieldForm(11, "name", "Invoice name", onAfterSubmit);
expect(mocks.showEditObjectFieldForm).toHaveBeenCalledTimes(1);
expect(mocks.showEditObjectFieldForm).toHaveBeenCalledWith(
CollectedOrderInvoices,
11,
'name',
'Invoice name',
"name",
"Invoice name",
onAfterSubmit
);
expect(mocks.swalFire).not.toHaveBeenCalled();