39 lines
1.5 KiB
TypeScript
39 lines
1.5 KiB
TypeScript
import { test, describe, expect } from "bun:test";
|
|
import { endEnergieVerbrauchVerbrauchsausweis_2016 } from "#lib/Berechnungen/VerbrauchsausweisWohnen/VerbrauchsausweisWohnen_2016.js";
|
|
import { importVerbrauchsausweisWohnenAltesSystem, verbrauchsausweisWohnenImportTranslate } from "#lib/altes-system/import.js";
|
|
|
|
describe('Energieverbrauch', async () => {
|
|
const request = await importVerbrauchsausweisWohnenAltesSystem();
|
|
|
|
for (const ausweis of request.data) {
|
|
if (ausweis.ausweisart !== "VA" || !ausweis.objekt_plz) {
|
|
continue;
|
|
}
|
|
|
|
const ausweisNeu = verbrauchsausweisWohnenImportTranslate(ausweis);
|
|
const berechnungen = await endEnergieVerbrauchVerbrauchsausweis_2016(ausweisNeu);
|
|
const berechnungenAlt = ausweis.calculations;
|
|
|
|
let missingKlimafaktoren: boolean = false;
|
|
|
|
test("Klimafaktoren", async () => {
|
|
console.log("PLZ: " + ausweisNeu.aufnahme.plz)
|
|
console.log("Startdatum: " + ausweisNeu.startdatum)
|
|
expect(berechnungen?.klimafaktoren).toHaveLength(3)
|
|
try {
|
|
expect(berechnungen?.klimafaktoren.map(x => x.klimafaktor)).toEqual(berechnungenAlt.klimafaktoren)
|
|
} catch(e) {
|
|
missingKlimafaktoren = true;
|
|
}
|
|
})
|
|
|
|
|
|
test.skipIf(missingKlimafaktoren)("Endenergieverbrauch", async () => {
|
|
expect(berechnungen?.endEnergieVerbrauchGesamt).toBeCloseTo(berechnungenAlt.endEnergieVerbrauchGesamt, 0)
|
|
})
|
|
|
|
test.skipIf(missingKlimafaktoren)("Primärenergieverbrauch", async () => {
|
|
expect(berechnungen?.primaerEnergieVerbrauchGesamt).toBeCloseTo(berechnungenAlt.primaerEnergieVerbrauchGesamt, 0)
|
|
})
|
|
}
|
|
}) |