evcc-io/assets/js/utils/circuits.test.ts
Maschga d07a0741ec
chore: use vite+ (#32297)
Co-authored-by: Michael Geers <michael@geers.tv>
2026-07-31 11:43:57 +02:00

51 lines
1.2 KiB
TypeScript

import { describe, expect, test } from "vite-plus/test";
import { circuitTree } from "./circuits";
describe("circuitTree", () => {
test("single root", () => {
const result = circuitTree({
main: { power: 0 },
});
expect(result).toEqual({ name: "main", power: 0 });
});
test("root with children", () => {
const result = circuitTree({
root: { power: 0 },
child1: { power: 0, parent: "root" },
child2: { power: 0, parent: "root" },
});
expect(result).toEqual({
name: "root",
power: 0,
children: [
{ name: "child1", power: 0, parent: "root" },
{ name: "child2", power: 0, parent: "root" },
],
});
});
test("nested two levels", () => {
const result = circuitTree({
root: { power: 0 },
mid: { power: 0, parent: "root" },
leaf: { power: 0, parent: "mid" },
});
expect(result).toEqual({
name: "root",
power: 0,
children: [
{
name: "mid",
power: 0,
parent: "root",
children: [{ name: "leaf", power: 0, parent: "mid" }],
},
],
});
});
test("empty input", () => {
expect(circuitTree({})).toBeNull();
});
});